我正在编写一个Python脚本,它使用应用程序pdftk几次来执行一些操作.
例如,我可以在windows命令行shell中使用pdftk来合并两个pdf文件,如下所示:
pdftk 1.pdf 2.pdf cat output result.pdf
Run Code Online (Sandbox Code Playgroud)
我想在我的Python脚本中执行上述操作.这是我尝试这样做的方式:
os.system('pdftk 1.pdf 2.pdf cat output result.pdf')
Run Code Online (Sandbox Code Playgroud)
上面的pdftk命令在Windows shell中完美运行.但是,当我尝试使用Python执行它时,它无法打开输入文件(1.pdf和2.pdf)os.system().这是我在尝试使用Python执行命令时从pdftk获得的错误消息os.system():
错误:无法打开PDF文件:1.pdf
错误:无法打开PDF文件:2.pdf
为什么会这样?我该如何解决?
请注意:我知道有更好的方法将pdf文件与Python合并.我的问题不是关于合并pdf文件.那只是一个玩具的例子.我想要实现的是使用Python执行pdftk和其他命令行应用程序的能力.
您可以使用以下方法避免(潜在的)引用、转义等问题subprocess:
import subprocess
subprocess.call(['pdftk', '1.pdf', '2.pdf', 'cat', 'output', 'result.pdf'])
Run Code Online (Sandbox Code Playgroud)
它与 一样易于使用os.system,如果您动态构建参数列表,甚至会更容易。
| 归档时间: |
|
| 查看次数: |
3769 次 |
| 最近记录: |