2016-11-15 62 views
1

我正在處理一個處理PDF文件的python腳本,儘管其中一些腳本包含的加密將使用限制爲僅打印,在我可以處理它們之前必須手動刪除它們。是否可以通過Python腳本執行QPDF

爲此,我已經手動使用QPDF在運行腳本之前刪除個別PDF文件的這些限制(qpdf的命令非常簡單...在命令提示符 - > qpdf --decrypt input.pdf輸出內。 pdf)

我的問題是 - 而不是手動做這個位,是否可以在我的Python腳本中執行QPDF可執行文件並運行命令?我一直沒有找到任何專門用來控制QPDF的Python模塊,所以我沒有太多希望。

+1

使用[subprocess](https://docs.python.org/3/library/subprocess.html)模塊來運行任何外部程序。即。 'subprocess.run([「qpdf」,「--decrypt」,「input.pdf」,「output.pdf」])' – furas

+0

[在Python中調用外部命令] /問題/ 89228 /主叫-AN-外部命令中的Python) – Mark

回答

1

感謝furas指引我在正確的方向。

這是我做到了在Windows 10:

  1. 下載QPDF,解壓的文件夾,並保存在某個地方你的電腦上。我把文件夾放在C:\ qpdf-5.1.2中。該文件夾內是bin \ qpdf.exe。
  2. 將環境變量設置爲C:\ qpdf-5.1.2 \ bin。要在Windows 10中設置環境變量,請轉至系統屬性>高級>環境變量。在PATH突出顯示的情況下,單擊編輯,然後單擊新建並粘貼到點2中目錄的路徑。

一旦設置完成,您可以在命令提示符和Python中引用'qpdf'。

import subprocess 
subprocess.run(["qpdf", "--decrypt", "C:/qpdf-5.1.2/bin/input.pdf", "C:/qpdf-5.1.2/bin/output.pdf"]) 
相關問題