python实现自动网页截图并裁剪图片


Posted in Python onJuly 30, 2018

本文实例为大家分享了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 相关文章推荐
基于python的汉字转GBK码实现代码
Feb 19 Python
python自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
使用基于Python的Tornado框架的HTTP客户端的教程
Apr 24 Python
详细讲解用Python发送SMTP邮件的教程
Apr 29 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
django manage.py扩展自定义命令方法
May 27 Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
Jun 13 Python
解决python selenium3启动不了firefox的问题
Oct 13 Python
python 通过可变参数计算n个数的乘积方法
Jun 13 Python
python字符串Intern机制详解
Jul 01 Python
python编写计算器功能
Oct 25 Python
python读写文件write和flush的实现方式
Feb 21 Python
python中redis查看剩余过期时间及用正则通配符批量删除key的方法
Jul 30 #Python
对PyTorch torch.stack的实例讲解
Jul 30 #Python
Python 中字符串拼接的多种方法
Jul 30 #Python
TensorFlow Session会话控制&Variable变量详解
Jul 30 #Python
TensorFlow Session使用的两种方法小结
Jul 30 #Python
教你利用Python玩转histogram直方图的五种方法
Jul 30 #Python
对TensorFlow中的variables_to_restore函数详解
Jul 30 #Python
You might like
如何给phpadmin一个保护
2006/10/09 PHP
DISCUZ 分页代码
2007/01/02 PHP
PHP入门速成教程
2007/03/19 PHP
php通过Chianz.com获取IP地址与地区的方法
2015/01/14 PHP
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
php 数组字符串搜索array_search技巧
2016/07/05 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
关于div自适应高度/左右高度自适应一致的js代码
2013/03/22 Javascript
javascript删除option选项的多种方法总结
2013/11/22 Javascript
js之ActiveX控件使用说明 new ActiveXObject()
2014/03/03 Javascript
VS2008中使用JavaScript调用WebServices
2014/12/18 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
js实现网页收藏功能
2015/12/17 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
ES6基础之数组和对象的拓展实例详解
2019/08/22 Javascript
vue data引入本地图片的两种方式小结
2019/11/13 Javascript
Vue自定义render统一项目组弹框功能
2020/06/07 Javascript
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
Python符号计算之实现函数极限的方法
2019/07/15 Python
Python学习笔记之lambda表达式用法详解
2019/08/08 Python
Python udp网络程序实现发送、接收数据功能示例
2019/12/09 Python
pandas中的数据去重处理的实现方法
2020/02/10 Python
python模拟哔哩哔哩滑块登入验证的实现
2020/04/24 Python
Windows 下更改 jupyterlab 默认启动位置的教程详解
2020/05/18 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
2020/12/08 Python
python3定位并识别图片验证码实现自动登录功能
2021/01/29 Python
财务分析个人的自荐书范文
2013/11/24 职场文书
法学毕业生自我鉴定
2014/01/31 职场文书
外贸专业求职信
2014/03/09 职场文书
优质服务口号
2014/06/11 职场文书
Python词云的正确实现方法实例
2021/05/08 Python
Python的这些库,你知道多少?
2021/06/09 Python
Python中glob库实现文件名的匹配
2021/06/18 Python
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技