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 相关文章推荐
Python3 操作符重载方法示例
Nov 23 Python
python实现根据文件关键字进行切分为多个文件的示例
Dec 10 Python
ML神器:sklearn的快速使用及入门
Jul 11 Python
Python 3.8 新功能全解
Jul 25 Python
python通过txt文件批量安装依赖包的实现步骤
Aug 13 Python
python2.7的flask框架之引用js&css等静态文件的实现方法
Aug 22 Python
Python 类,property属性(简化属性的操作),@property,property()用法示例
Oct 12 Python
python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例
Feb 28 Python
Python实现电视里的5毛特效实例代码详解
May 15 Python
keras model.fit 解决validation_spilt=num 的问题
Jun 19 Python
解决pytorch 交叉熵损失输出为负数的问题
Jul 07 Python
python利用opencv实现颜色检测
Feb 23 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
Content-type 的说明
2006/10/09 PHP
async和DOM Script文件加载比较
2014/07/20 PHP
推荐25款php中非常有用的类库
2014/09/29 PHP
php实现html标签闭合检测与修复方法
2015/07/09 PHP
PHP获取文件扩展名的常用方法小结【五种方式】
2018/04/27 PHP
Laravel 类和接口注入相关的代码
2019/10/15 PHP
仅IE不支持setTimeout/setInterval函数的第三个以上参数
2011/05/25 Javascript
javascript模拟实现C# String.format函数功能代码
2013/11/25 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
AngularJS内建服务$location及其功能详解
2016/07/01 Javascript
JS仿京东移动端手指拨动切换轮播图效果
2020/04/10 Javascript
Vue.js实战之使用Vuex + axios发送请求详解
2017/04/04 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
Vue-router路由判断页面未登录跳转到登录页面的实例
2017/10/26 Javascript
微信小程序实现换肤功能
2018/03/14 Javascript
[02:49:21]2019完美盛典全程录像
2019/12/08 DOTA
Python实现字符串匹配算法代码示例
2017/12/05 Python
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
Python中Proxypool库的安装与配置
2018/10/19 Python
python+openCV利用摄像头实现人员活动检测
2019/06/22 Python
通过 Django Pagination 实现简单分页功能
2019/11/11 Python
python解析命令行参数的三种方法详解
2019/11/29 Python
基于python tkinter的点名小程序功能的实例代码
2020/08/22 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
CSS3实现的炫酷菜单代码分享
2015/03/12 HTML / CSS
美国最大网上鞋店:Zappos
2016/07/25 全球购物
美国知名的摄影器材销售网站:Adorama
2017/02/01 全球购物
索引覆盖(Index Covering)查询含义
2012/02/18 面试题
观看信仰心得体会
2014/09/04 职场文书
庆六一开幕词
2015/01/29 职场文书
投标邀请书范本
2015/02/02 职场文书
2015年团支书工作总结
2015/04/03 职场文书
董事长新年致辞
2015/07/29 职场文书
春节随笔
2015/08/15 职场文书
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS