#!/usr/bin/env python3 import argparse from sat import util def main(args): if args.fiel_validar: util.fiel_validar(args) return if args.solicitar_descarga: util.solicitar_descarga(args) return if args.verificar_descarga: util.verificar_descarga(args) return if args.descargar_archivos: util.descargar_archivos(args) return util.descargar(args) return def _process_command_line_arguments(): now = util.today() year = now.year parser = argparse.ArgumentParser(description='CFDI Descarga SAT') help = 'Valida la FIEL' parser.add_argument('-fv', '--fiel-validar', help=help, action='store_true', default=False, required=False) help = 'Ruta al directorio con la FIEL' parser.add_argument('-fd', '--fiel-dir', help=help, default='') help = "Nombre de los archivos FIEL, el predeterminado es 'fiel'" parser.add_argument('-fn', '--fiel-nombre', help=help, default='fiel') help = "Descargar por Tipo: t=todos(default), e=emitidas, r=recibidas" parser.add_argument('-t', '--tipo', help=help, dest='type', default='t', choices=['t', 'e', 'r']) help = "Año de la descarga entre 2014 y el año actual (predeterminado)." parser.add_argument('-a', '--año', help=help, dest='year', default=year, type=int, choices=range(2014, year+1)) help = "Mes de la descarga, el mes actual es el predeterminado" parser.add_argument('-m', '--mes', help=help, dest='month', default=0, type=int, choices=range(13)) help = "Día de la descarga, de forma predeterminada no se usa" parser.add_argument('-d', '--dia', help=help, dest='day', default=0, type=int, choices=range(31)) help = "Intervalo de días a partir de la fecha actual y hacia a atras" parser.add_argument('-ud', '--ultimos-dias', help=help, dest='last_days', default=0, type=int, choices=range(30)) help = "Fecha inicial AAAA-MM-DD" parser.add_argument('-fi', '--fecha-inicial', help=help, dest='date_start', default='') help = "Fecha final AAAA-MM-DD" parser.add_argument('-ff', '--fecha-final', help=help, dest='date_end', default='') help = 'Solicitar descarga' parser.add_argument('-sd', '--solicitar-descarga', help=help, action='store_true', default=False, required=False) help = 'Verificar estatus de descarga' parser.add_argument('-vd', '--verificar-descarga', help=help, action='store_true', default=False, required=False) help = 'Descargar archivos' parser.add_argument('-da', '--descargar-archivos', help=help, action='store_true', default=False, required=False) help = 'ID de solicitud' parser.add_argument('-id', '--id-solicitud', dest='id_request', help=help, default='') help = 'ID archivo' parser.add_argument('-ida', '--id-archivo', dest='id_file', help=help, default='') help = 'Ruta de descarga de archivos' parser.add_argument('-dd', '--directorio-descargas', dest='path_download', help=help, default='') help = 'Descargar solo metadatos' parser.add_argument('-md', '--metadata', help=help, action='store_true', default=False, required=False) args = parser.parse_args() return args if __name__ == '__main__': args = _process_command_line_arguments() main(args)