Сбой вызова подпроцесса python для irfanview

Я пытаюсь заставить Irfanview извлечь для меня несколько многостраничных изображений. Поскольку вы не можете выполнить эту операцию в Irfanview, я пытаюсь использовать Pythons subprocess.call(), чтобы выполнить работу командной строки для меня.

У меня есть команда в powershell, работающая без проблем. Но когда я пытаюсь выполнить ту же самую команду с помощью subprocess.call (), Irfanview сообщает мне, что у меня есть "неподдерживаемый тип сохранения!"

PS команда:

i_view32.exe .\multiPage.tif /extract=(".\,tif")

Код Python:

cmd = r'i_view32.exe .\multiPage.tif /extract=(".\,tif")'
subprocess.call(cmd, shell=True)

Я тоже пробовал без оболочки. Также я попытался дать ему полностью квалифицированные имена. Нет разницы.

Есть идеи?

Ура,

Джеймс

1 ответ

Решение

Ааа. Я нашел проблему. Оказывается, в PS мне нужно указать путь к папке извлечения в виде строки, а через Python - нет.

Так что в Пи вместо

i_view32.exe .\multiPage.tif /extract=(".\,tif")

Это должно было быть

i_view32.exe .\multiPage.tif /extract=(.\,tif)

Это на самом деле так же, как в руководстве по Irfanview. Понятия не имею, почему PS потребовал бит строки.

Другие вопросы по тегам