Python验证码截取识别代码实例


Posted in Python onMay 16, 2020

1.环境

  • python3.7
  • selenium
  • webdriver
  • PIL
  • Image

2.下面demo是截取“去哪儿”官网的验证码

# -*- coding=utf-8 -*-
# CodeDemo.py
# PyCharm  Slade  2019/7/20
# import selenium,os
from selenium import webdriver
from PIL import Image


def aucthcode(coderddr):
  """
  传参验证码的Xpath
  页面全图为'code.png'     命名这个你们开心就好
  验证码截图名为"aucthcode.png
  :param coderddr:
  :return:
  """
  
  driver.save_screenshot('code.png')
  element = driver.find_element_by_xpath(coderddr)    # 获取验证码的div位置
  left = element.location['x'] +280
  top = element.location['y'] +81
  right = left + element.size['width'] + int(13)
  bottom = top + element.size['height'] + int(2)
  img = Image.open('code.png')
  imgcod = img.crop((left,top,right,bottom))     # 根据 div的长宽截图
  imgcod.save('aucthcode.png')
  print((left,top,right,bottom))


if __name__ == '__main__':
  driver = webdriver.Chrome()
  driver.maximize_window()
  driver.get('https://user.qunar.com/passport/login.jsp')
  driver.find_element_by_css_selector('a.pwd-login').click()
  aucthcode('//*[@id="captcha"][1]/p[1]')
  driver.quit()


  # img = Image.open('code.png')
  # imgcod = img.crop((1392,393,1490,425))     # 根据 div的长宽截图
  # imgcod.save('aucthcodeN.png')

注:代码中的验证码截取坐标,不一定是标准的,我是通过获取元素的坐标为基础参数,然后在main里面进行调试最终得到我适用的坐标

运行效果展示 code.png

Python验证码截取识别代码实例

运行截取的验证码效果展示 aucthcode.png

Python验证码截取识别代码实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python在多玩图片上下载妹子图的实现代码
Aug 13 Python
Python pandas常用函数详解
Feb 07 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
Feb 22 Python
对Tensorflow中权值和feature map的可视化详解
Jun 14 Python
python实现图片转字符小工具
Apr 30 Python
python的faker库用法
Nov 28 Python
Python的PIL库中getpixel方法的使用
Apr 09 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
Oct 30 Python
python 获取计算机的网卡信息
Feb 18 Python
python微信智能AI机器人实现多种支付方式
Apr 12 Python
基于plt.title无法显示中文的快速解决
May 16 #Python
基于python生成英文版词云图代码实例
May 16 #Python
解决Python数据可视化中文部分显示方块问题
May 16 #Python
Python使用Excel将数据写入多个sheet
May 16 #Python
python小程序之4名牌手洗牌发牌问题解析
May 15 #Python
python3 使用openpyxl将mysql数据写入xlsx的操作
May 15 #Python
使用Python实现将多表分批次从数据库导出到Excel
May 15 #Python
You might like
php公用函数列表[正则]
2007/02/22 PHP
php网站来路获取代码(针对搜索引擎)
2010/06/08 PHP
Laravel 框架控制器 Controller原理与用法实例分析
2020/04/14 PHP
用jscript启动sqlserver
2007/06/21 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
实例详解jQuery的无new构建
2016/08/02 Javascript
详解AngularJs中$resource和restfu服务端数据交互
2016/09/21 Javascript
canvas绘制万花筒效果(代码分享)
2017/01/20 Javascript
源码分析Vue.js的监听实现教程
2017/04/23 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
使用Javascript简单计算器
2018/11/17 Javascript
实例介绍JavaScript中多种组合继承
2019/01/20 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
vue-cli中使用高德地图的方法示例
2019/03/28 Javascript
JS实现贪吃蛇游戏
2019/11/15 Javascript
小程序分享链接onShareAppMessage的具体用法
2020/05/22 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
[42:20]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
python中的五种异常处理机制介绍
2014/09/02 Python
python使用matplotlib绘制柱状图教程
2017/02/08 Python
python回调函数中使用多线程的方法
2017/12/25 Python
Python Xml文件添加字节属性的方法
2018/03/31 Python
修改默认的pip版本为对应python2.7的方法
2018/11/06 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
解决Python paramiko 模块远程执行ssh 命令 nohup 不生效的问题
2020/07/14 Python
Python CategoricalDtype自定义排序实现原理解析
2020/09/11 Python
德国baby-markt婴儿用品瑞士网站:baby-markt.ch
2017/06/09 全球购物
RUIFIER官网:英国奢侈高级珠宝品牌
2020/06/12 全球购物
几个MySql的面试题
2013/04/22 面试题
物业管理应届生求职信
2013/10/28 职场文书
艺术应用与设计个人的自我评价
2013/11/23 职场文书
美术学专业求职信
2014/07/23 职场文书
团员个人总结
2015/02/26 职场文书
浅谈Python项目的服务器部署
2021/04/25 Python
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang
利用Python实现Picgo图床工具
2021/11/23 Python