В ваших скриптах ищите argv из модуля sys.Вот как вы передаете аргументы извне.Если вы хотите запустить этот процесс в цикле, вы можете либо изменить сценарии, которые он принимает в папке со всем его содержимым в списке, и преобразовать цикл всем содержимым, либо использовать subproces.run для вызова сценария для всех файлов, которые вы хотитедля преобразования.
Обновление: sys.argv [0] - это ваш скрипт, sys.argv [1] - это вход, а sys.argv [2] - выход.
Учитывая, что sys.argv[1] - это ввод, а sys.argv [2] - выход.Я предполагаю, что этот поток:
import sys
in_file_name = sys.argv[1]
# do transformation and write them to back
tree = ET.parse(in_file_name)
root = tree.getroot()
# more code
out_file_name = sys.argv[2]
# write transformation to this file
Вместо передачи файла, вы можете передать путь к папке.Вам нужно преобразовать приведенное выше преобразование в функцию
import glob, os, sys
def transformer(in_file_name):
# do transformation and write them to back
tree = ET.parse(in_file_name)
root = tree.getroot()
# more code
# instead of getting out_file_name from sys.argv[2] like
#out_file_name = sys.argv[2]
# we will generate from in_file_name
out_file_name = in_file_name.split('.')[0] +'.srt'
# write transformation to this file
# let’s do that to all files in that folder
in_path_name = sys.argv[1]
os.chdir(in_path_name)
for file in glob.glob("*.ttml"):
transformer(file)
Для ее запуска вам понадобится только python myscript.py folder_path
Примечание: написал это просто из предположения, как выглядит ваш скрипт;)