From 63c08d3a42af763896f332dc7f99a1be43bf5792 Mon Sep 17 00:00:00 2001 From: El Mau Date: Fri, 24 Dec 2021 21:29:13 -0600 Subject: [PATCH] =?UTF-8?q?Cambio=20en=20m=C3=A9tido=20join=20de=20utilida?= =?UTF-8?q?des?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/cfdi-test.py | 8 ++++---- source/util.py | 29 ++++++++++++++++------------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/source/cfdi-test.py b/source/cfdi-test.py index d02bfbc..9b8e89c 100755 --- a/source/cfdi-test.py +++ b/source/cfdi-test.py @@ -10,10 +10,10 @@ def main(args): return if args.dir_trabajo: - entrada = util.join(args.dir_trabajo, 'entrada') - generados = util.join(args.dir_trabajo, 'generados') - por_timbrar = util.join(args.dir_trabajo, 'por_timbrar') - timbrados = util.join(args.dir_trabajo, 'timbrados') + entrada = util.validar_dir(args.dir_trabajo, 'entrada') + generados = util.validar_dir(args.dir_trabajo, 'generados') + por_timbrar = util.validar_dir(args.dir_trabajo, 'por_timbrar') + timbrados = util.validar_dir(args.dir_trabajo, 'timbrados') else: entrada = args.dir_entrada generados = args.dir_generados diff --git a/source/util.py b/source/util.py index 7560c01..31c3370 100644 --- a/source/util.py +++ b/source/util.py @@ -34,13 +34,20 @@ NS_CFDI = { } +def validar_dir(base, name): + path = _join(base, name) + if not _exists(path): + os.makedirs(path) + return path + + def _exists(path): if not path: return False return Path(path).exists() -def join(*paths): +def _join(*paths): return str(Path(paths[0]).joinpath(*paths[1:])) @@ -349,9 +356,9 @@ def _validate_args_validar_cert(args): log.error(msg) return False, data - path_cer = join(path_cert, f'{name}.cer') - path_key = join(path_cert, f'{name}.key') - path_enc = join(path_cert, f'{name}.enc') + path_cer = _join(path_cert, f'{name}.cer') + path_key = _join(path_cert, f'{name}.key') + path_enc = _join(path_cert, f'{name}.enc') if not _exists(path_cer): msg = f'No se encontrĂ³ el archivo CER en: {path_cer}' @@ -428,14 +435,14 @@ def make(source, target): def _stamp(path, target): current_path = os.path.dirname(__file__) - path_cer = join(current_path, 'certificados') - path_xslt = join(current_path, 'xslt', 'cadena.xslt') + path_cer = _join(current_path, 'certificados') + path_xslt = _join(current_path, 'xslt', 'cadena.xslt') doc = ET.parse(path) for pac in PACs.keys(): xslt = open(path_xslt, 'rb') - cer = read_file(join(path_cer, f'{pac}.cer')) - key = read_file(join(path_cer, f'{pac}.enc')) + cer = read_file(_join(path_cer, f'{pac}.cer')) + key = read_file(_join(path_cer, f'{pac}.enc')) cert = SATCertificate(cer, key) # ~ print(cert) @@ -512,17 +519,13 @@ def read_file(path): return data - - def get_files(path, ext='xml'): docs = [] for folder, _, files in os.walk(path): pattern = re.compile('\.{}'.format(ext), re.IGNORECASE) - docs += [join(folder,f) for f in files if pattern.search(f)] + docs += [_join(folder,f) for f in files if pattern.search(f)] return tuple(docs) - - def _replace_ext(path, ext): return str(Path(path).with_suffix(ext))