python 实现 浏览器页面转图片

python 实现 浏览器页面转图片

准备:需要下载chromedriver.exe (无头浏览器),放到你的xxxx.python 目录下

ChromeDriver 是 Chrome 驱动,是 Python 爬虫使用的 selenium 模块用来模拟打开谷歌浏览器所必须的一个文件,能模拟在谷歌浏览器上的操作。

python代码:


"""
将html页面转换为图片
"""
from sys import argv

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
import time

chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--start-maximized')
path = os.getcwd()
filename = path + "/data/train/article/img/"

if __name__ == "__main__":
    # url = str(argv[1])
    start = time.perf_counter()  # 返回系统运行时间

    url = "http://XXXXXXXXX:8080/8300"

    driver = webdriver.ChromeOptions()
    driver = webdriver.Chrome(options=chrome_options)
    driver.get(url)
    # 将该页面的展开到最大
    width = driver.execute_script(
        "return Math.max(document.body.scrollWidth,document.body.offsetWidth, document.documentElement.clientWidth, document.documentElement.scrollWidth, document.documentElement.offsetWidth);")
    height = driver.execute_script(
        "return Math.max(document.body.scrollHeight, document.body.offsetHeight,document.documentElement.clientHeight, document.documentElement.scrollHeight, document.documentElement.offsetHeight);")
    driver.set_window_size(width, height)

    driver.save_screenshot('C:/Users/omnipotent_wang/Desktop/a.png')
    driver.close()
    end = time.perf_counter()
    print('用时:{:.5f}s'.format(end - start))
    print('true')

注意:如果你的访问不是私密连接,需要在上面加上一行代码

//这个是解决 Chrome 访问非受信证书页面时,提示「您的连接不是私密连接」错误的方法
chrome_options.add_argument('--ignore-certificate-errors')  

python 实现 浏览器页面转图片_第1张图片

你可能感兴趣的:(python,demo记录,python,selenium,爬虫)