python如何截长图_怎么自动化selenium截屏,截取长图哦,不是组合,不用phantomjs...

from selenium import webdriver

from selenium.webdriver.remote.webelement import WebElement

from selenium.webdriver.common.action_chains import ActionChains

from selenium.webdriver.chrome.options import Options

import time

def take_screenshot(url, save_fn=”capture.png”):

chrome_options = Options()

chrome_options.add_argument(‘–headless’)

chrome_options.add_argument(‘–disable-gpu’)

path = ‘/Users/Mac/Downloads/chromedriver.exe’

browser = webdriver.Chrome(path,chrome_options=chrome_options) # Get local session of firefox

#browser.set_window_size(1200, 3900)

browser.get(url) # Load page

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)

size = browser.find_element_by_xpath(“//body”).size

browser.set_window_size(size.get(“width”), size.get(“height”))

browser.save_screenshot(save_fn)

browser.close()

if __name__ == “__main__”:

take_screenshot(“http://www.studclub.cn/”)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值