Мне было интересно, есть ли способ запустить исполняемый файл командной строки в python, но передать ему значения аргументов из памяти, не записывая данные из памяти во временный файл на диске.Из того, что я видел, кажется, что subprocess.Popen (args) является предпочтительным способом запуска программ из сценариев Python.
Например, у меня есть файл PDF в памяти.Я хочу преобразовать его в текст, используя функцию командной строки pdftotext, которая присутствует в большинстве дистрибутивов Linux.Но я бы предпочел не записывать pdf-файл в памяти во временный файл на диске.
pdfInMemory = myPdfReader.read()
convertedText = subprocess.<method>(['pdftotext', ??]) <- what is the value of ??
Какой метод мне следует вызывать и как я должен передать данные из памяти в первый вход и каналвывод его обратно в другую переменную в памяти?
Я предполагаю, что есть другие модули pdf, которые могут выполнять преобразование в памяти, и информация об этих модулях была бы полезной.Но для дальнейшего использования мне также интересно узнать, как передать ввод и вывод в командную строку изнутри python.
Любая помощь будет принята с благодарностью.