小编给大家分享一下python实现自动网页截图并裁剪图片的方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
具体内容如下
代码:
# coding=utf-8 import time from selenium import webdriver from selenium.webdriver.chrome.options import Options from PIL import Image import os all_urls = ['http:/****edit'] def login(): chrome_options = Options() chrome_options.add_argument('--headless') driver = webdriver.Chrome(executable_path='./chromedriver',chrome_options=chrome_options) driver.set_window_size(1200, 741) driver.implicitly_wait(2) print('初始化中...') driver.get("http://x*****e") print('填写登录信息中...') acc = driver.find_element_by_id('login-email') pwd = driver.find_element_by_id('login-pass') btn = driver.find_element_by_tag_name('button') acc.send_keys('***') pwd.send_keys('***') btn.click() print('跳转到验证码页面中...') time.sleep(2) capta = driver.find_element_by_id('code') capta_input = input('请输入两步验证码:') capta.send_keys(capta_input) btn1 = driver.find_element_by_tag_name('button') btn1.click() time.sleep(2) print('跳转到创意编辑页面中...') return driver def get_screen(driver,urls): count = 1 for url in urls: driver.get(url) print('正在抓取--> %s'% url) count +=1 time.sleep(2) uid = url.split('/')[-2] cid = url.split('/')[-5] driver.get_screenshot_as_file("./screen_shot/{}-{}.png".format(uid,cid)) print("创意--> {}-{}.png 已经保存".format(uid,cid)) print('还剩 %s 个'% str(len(urls)-count)) def crop_img(): for img in os.listdir('./screen_shot'): if img.endswith('.png'): print('%s裁剪中。。'% img) im = Image.open('./screen_shot/%s'% img) x = 755 y = 162 w = 383 h = 346 region = im.crop((x, y, x+w, y+h)) region.save("./screenshot_final/%s" % img) if __name__ == '__main__': driver = login() get_screen(driver,all_urls) driver.quit() print('所有抓取结束') crop_img() print('所有裁剪结束')
看完了这篇文章,相信你对“python实现自动网页截图并裁剪图片的方法”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。