首页 > 解决方案 > 当我使用 phantomjs、python、selenium 创建 pdf 时,pdf 没有完全显示

问题描述

我尝试使用 Python + Selenium + PhantomJS 技术从链接创建 pdf,但是在将其转换为 pdf 后我没有得到完整的图像,请帮助。我的代码如下

from selenium import webdriver
import selenium.webdriver.support.ui as ui
from selenium.webdriver.support.ui import WebDriverWait
import time
def download(driver, target_path):
    """Download the currently displayed page to target_path."""
    def execute(script, args):
        driver.execute('executePhantomScript',
                       {'script': script, 'args': args})
    driver.command_executor._commands['executePhantomScript'] = ('POST', '/session/$sessionId/phantom/execute')
    page_zoom = 'this.zoomFactor = {"50%"};'
    execute(page_zoom, [])
    page_viewportSize = 'this.viewportSize = {width: "210mm", height: "297mm"};'
    execute(page_viewportSize, [])
    page_format = 'this.paperSize = {format: "A4", orientation: "portrait"};'
    execute(page_format, [])
    render = '''this.render("{}")'''.format(target_path)
    execute(render, [])
if __name__ == '__main__':
    driver = webdriver.PhantomJS('phantomjs')
    driver.get('https://www.google.com/')
    download(driver, "113.pdf")

运行上面的代码后得到不正确的pdf

标签: pythonseleniumphantomjs

解决方案


推荐阅读