爬虫案例--基于selenium实现12306模拟登录

12306模拟登录:

  --使用selenium打开登录页面

  --对当前selenium打开的页面进行截图

  --对当前图片局部区域进行裁剪

    --因为如果获取图片url进行下载,相当于第二次请求图片,那么图片和打开的页面会不一致

  --使用超级鹰识别验证码图片(坐标)

 

裁剪验证码图片并保存:

复制代码
# 需求:将验证码截图下载
service = Service("chromedriver.exe")
bro = webdriver.Chrome(service=service)
bro.get('https://www.taobao.com')

# 整个页面截图
bro.save_screenshot('selenium的淘宝页面截图.png')

# 定位到需要截取的标签位置
div = bro.find_elements(By.CLASS_NAME,'grid-content')[0]

# 取得标签所处的左上角坐标和标签长宽
location = div.location
size = div.size
rangle = (
   int(location['x']),int(location['y']),int(location['x']+size['width']),int(location['y']+size['height'])
   )

# 引入裁剪模块及参数:Pillow模块(from PIL import Image)
i = Image.open('./selenium的淘宝页面截图.png')
code_img_name = '聚划算div截图.png'
# 裁剪
frame = i.crop(rangle)
frame.save(code_img_name)
复制代码

 

posted @   EricYJChung  阅读(65)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示