在chrome-python2.7中自动将网页打印/保存为pdf



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

我已经检查了网络浏览器模块,但它似乎不是为了这个目的。

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

谢谢你的建议。

这对我在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",
            "account": ""
        }
    ],
    "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();')

我找到了一个可能的解决方案。

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

最初的帖子是:

Python+Selenium+PhantomJS渲染为PDF

最好。

最新更新