Új hozzászólás Aktív témák

  • Hege1234

    addikt

    sziasztok!

    hogyan tudnám megakadályozni a script továbbfutását, ha az elérési útban
    ékezetes karakter található?
    windows rendszerről van szó

    a thrd_dir tartalmazza az ékezetes utat, de mégis simán továbbfut és nem áll meg
    regex101 oldalán megnéztem és ennek [\x80-\xFF] fel kellene ismernie, hogy ékezet

    valakinek esetleg valami ötlet vagy ehhez is külső modul kellene vagy csak én bénázok el valamit?

    import os
    import re

    def has_accented_directory(thrd_dir):
    for root, dirs, _ in os.walk(thrd_dir):
    for dir_name in dirs:
    if re.search(r'[\x80-\xFF]', dir_name):
    return True
    return False

    currentFile = __file__
    realPath = os.path.realpath(currentFile)
    dirPath = os.path.dirname(realPath)
    dirName = os.path.basename(dirPath)
    parentDir = os.path.dirname(dirPath)
    sec_dir = os.path.dirname(parentDir)
    thrd_dir = os.path.dirname(sec_dir)

    print(f'Elérési utak:')
    print(f'dirPath: {dirPath}')
    print(f'parentDir: {parentDir}')
    print(f'sec_dir: {sec_dir}')
    print(f'thrd_dir: {thrd_dir}')

    paths_to_check = [dirPath, dirName, parentDir, sec_dir, thrd_dir]
    for path in paths_to_check:
    if has_accented_directory(path):
    print(f"\n[HIBA] Az elérési útban ékezetes karakterek találhatók: \n'{path}'")
    ex_it_0 = input(f'\nKilépéshez Enter...')
    exit()

    Elérési utak:

    dirPath: I:\_v2\új mappa\files\programok\hianyzo-modulok
    parentDir: I:\_v2\új mappa\files\programok
    sec_dir: I:\_v2\új mappa\files
    thrd_dir: I:\_v2\új mappa

Új hozzászólás Aktív témák