selenium调用浏览器打印功能,并保存为PDF

编程知识 更新时间:2023-04-30 21:43:34

前言

在使用selenium处理浏览器功能时,无法正常检测到或无法定位到你想处理的功能。
而浏览器的启动参数可以帮我们实现很多功能。

点击查看——Chrome浏览器启动命令行参数大全

功能详情

代码如下(示例):

# -*- coding: UTF8 -*-
import json
from selenium import webdriver


#设置打印机的纸张大小、打印类型、保存路径等
chrome_options = webdriver.ChromeOptions()
    settings = {
        "recentDestinations": [{
            "id": "Save as PDF",
            "origin": "local",
            "account": ""
        }],
        "selectedDestinationId": "Save as PDF",
        "version": 2,
        "isHeaderFooterEnabled": False,

        # "customMargins": {},
        #"marginsType": 2,#边距(2是最小值、0是默认)
        # "scaling": 100,
        # "scalingType": 3,
        # "scalingTypePdf": 3,
        #"isLandscapeEnabled": True,  # 若不设置该参数,默认值为纵向
        "isCssBackgroundEnabled": True,
        "mediaSize": {
            "height_microns": 297000,
            "name": "ISO_A4",
            "width_microns": 210000,
            "custom_display_name": "A4"
        },
    }

    chrome_options.add_argument('--enable-print-browser')
    # chrome_options.add_argument('--headless') #headless模式下,浏览器窗口不可见,可提高效率
    prefs = {
        'printing.print_preview_sticky_settings.appState': json.dumps(settings),
        'savefile.default_directory': 'C:\\Users\\admin\\Desktop'  # 此处填写你希望文件保存的路径,可填写your file path默认下载地址
    }

    chrome_options.add_argument('--kiosk-printing')  # 静默打印,无需用户点击打印页面的确定按钮
    chrome_options.add_experimental_option('prefs', prefs)

    driver = webdriver.Chrome("../chromedriver.exe", options=chrome_options)
    driver.get('https://wwwblogs/new-june/p/14509601.html')
    driver.maximize_window()#浏览器最大化
    driver.execute_script(
        'document.title="my_test_file3.pdf";window.print();')  # 利用js修改网页的title,该title最终就是PDF文件名,利用js的window.print可以快速调出浏览器打印窗口,避免使用热键ctrl+P
    # driver.close()#关闭当前页
    driver.quit()

点击查看——Chrome浏览器启动命令行参数大全

更多推荐

selenium调用浏览器打印功能,并保存为PDF

本文发布于:2023-04-22 23:15:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/183f53a91d44124ad865e0cbe359a4be.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:保存为   浏览器   功能   selenium   PDF

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 97331文章数
  • 24754阅读数
  • 0评论数