gpt4 book ai didi

python - 从 python 运行命令行并从内存中传递参数

转载 作者:IT王子 更新时间:2023-10-29 01:19:27 25 4
gpt4 key购买 nike

我想知道是否有一种方法可以在 python 中运行命令行可执行文件,但将内存中的参数值传递给它,而不必将内存数据写入磁盘上的临时文件。据我所知,subprocess.Popen(args) 似乎是从 python 脚本内部运行程序的首选方式。

比如我内存中有一个pdf文件。我想使用大多数 Linux 发行版中存在的命令行函数 pdftotext 将其转换为文本。但我不想将内存中的 pdf 文件写入磁盘上的临时文件。

pdfInMemory = myPdfReader.read()
convertedText = subprocess.<method>(['pdftotext', ??]) <- what is the value of ??

我应该调用什么方法,我应该如何将内存数据通过管道传输到它的第一个输入并将其输出通过管道传输回内存中的另一个变量?

我猜还有其他 pdf 模块可以在内存中进行转换,有关这些模块的信息会有所帮助。但为了将来引用,我也对如何从 python 内部将输入和输出通过管道传输到命令行感兴趣。

如有任何帮助,我们将不胜感激。

最佳答案

Popen.communicate :

import subprocess
out, err = subprocess.Popen(["pdftotext", "-", "-"], stdout=subprocess.PIPE).communicate(pdf_data)

关于python - 从 python 运行命令行并从内存中传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3745178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com