基于Python+Selenium实现网页进行自动截图
jopen
10年前
Selenium是一个用来进行自动化测试的工具,他可以调用正常的浏览器进行一系列的操作。
1、安装Selenium
直接命令行下执行 pip install Selenium 即可,方便简单。
2、下载Chrome Driver
下载地址为:http://code.google.com/p/chromedriver/downloads/list
下载完毕后将下载到的chromedriver.exe 放在 system32目录行下或与你的程序放在同一个目录。
3、编写截图的Python代码
具体代码如下:
# -*- coding: utf-8 -*- from selenium import webdriver import time def capture(url, save_fn="capture.png"): browser = webdriver.Chrome() browser.set_window_size(1200, 900) browser.get(url) browser.execute_script(""" (function () { var y = 0; var step = 100; window.scroll(0, 0); function f() { if (y < document.body.scrollHeight) { y += step; window.scroll(0, y); setTimeout(f, 50); } else { window.scroll(0, 0); document.title += "scroll-done"; } } setTimeout(f, 1000); })(); """) for i in xrange(30): if "scroll-done" in browser.title: break time.sleep(1) browser.save_screenshot(save_fn) browser.close() if __name__ == "__main__": capture("http://www.baidu.com")
引用地址:http://www.biaodianfu.com/python-selenium-capture.html