在chrome-python 2.7中自动打印/保存网页为pdf

时间:2015-06-30 11:06:40

标签: html python-2.7 automation pdf-generation

我正在尝试将打印保存网页自动化为chrome中的pdf。

我已经检查过webbrowser模块,但它似乎并不是出于此目的。

我探索了wkhtmltopdf作为替代方案但是在下载文件时它似乎被病毒感染了。

感谢您的建议。

2 个答案:

答案 0 :(得分:3)

在Windows 7 x64上使用Chrome 62.0.3202.94,ChromeDriver 2.33.506120,Selenium 3.4.3和Python 2.7.14或3.6.3对我有用:

import json
from selenium import webdriver

appState = {
    "recentDestinations": [
        {
            "id": "Save as PDF",
            "origin": "local"
        }
    ],
    "selectedDestinationId": "Save as PDF",
    "version": 2
}

profile = {'printing.print_preview_sticky_settings.appState': json.dumps(appState)}

chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option('prefs', profile)
chrome_options.add_argument('--kiosk-printing')

driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('https://www.google.com/')
driver.execute_script('window.print();')

答案 1 :(得分:2)

我能够找到可能的解决方案。

代码将html文件保存为pdf,这是我的最终目标。

原帖是:

  

Python + Selenium + PhantomJS render to PDF

最佳。