pdftotext не может найти файлы для конвертации при вызове внутри скрипта Python

1

У меня есть python script, который продолжает сбой:

subprocess.call(["pdftotext", pdf_filename])

ошибка:

OSError: [Errno 2] No such file or directory

абсолютный путь к имени файла (который я храню в файле журнала как я debug) в порядке; в командной строке, если я набираю pdftotext <pdf_filename_goes_here>, он работает для любого из названий с плохими именами. но при вызове с использованием subprocess в python я все время получаю эту ошибку.

что происходит???

тоже, я попробовал на интерпретаторе python, и он сработает!

>>> import subprocess
>>> subprocess.call(["pdftotext", "/path/to/file/test.pdf"])
0
>>> 

update:, чтобы сделать его известным для всех, я также пробовал:

subprocess.call(["/usr/bin/pdftotext", "/path/to/file/test.pdf"])

который также дал ту же ошибку. и ive использовал /usr/bin/pdftotext test.pdf напрямую, и он работал, поэтому я знаю, что правильный путь к исполняемому файлу pdftotext. любые другие предложения?

Теги:
pdftotext

1 ответ

1
Лучший ответ

Вы также получите эту ошибку, если она не сможет найти исполняемый файл на пути... попробуйте также использовать полный путь к pdftotext и посмотрите, как устанавливается $PATH для subprocess.call.

  • 0
    разве это не исключено, поскольку я могу заставить его работать на интерпретаторе python?
  • 0
    Вы просто наследуете $ PATH родителя? Если это так, то, возможно, что-то меняет это перед subprocess.call (), чего не происходит, когда вы просто делаете вызов из repl.
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню