python自动化实现验证码登录过程
(自动化实现验证码登录,这里内容是入坑后,整合了几个文档的内容)|
以下模块是使用时需要用到的
首先:安装pillow库,它的作用是对图片进行简单的处理,在pytharm中使用pip install pillow指令即可安装
如果出现超时报错可以用下面指令进行安装
pip --default-timeout=100 install -U pillow
下载tesseract图片识别文字模块
tesseract下载地址:https://digi.bib.uni-mannheim.de/tesseract/本人下载的是2019.03.14版本的
下载后就是一个exe安装包,直接右击安装即可,安装完成之后
配置两个环境变量:
(1)编辑 系统变量里面 path,添加tesseract的安装路径:
我的路径是默认安装的路径:C:\Program \Tesseract-OCR(添加后别忘记加上";"结尾,记得保存)
(2)点击我的电脑–>属性–>高级设置—>环境变量---->path下面的—>新建—>变量名:TESSDATA_PREFIX---->变量值:前面的加上\tessdata
接下来,为了在python代码中使用tesseract功能,使用pip安装pytesseract:
pip install pytesseract
安装后在CMD命令行输入:tesseract test.jpg text -l chi_sim(网上随意找的一个指令)
运行后显示:
提示是没有语言包,然后就去查资料踩了一个坑,说是要在安装的时候勾选: Addtional language data(download)
于是找到C:\Program \Tesseract-OCR,卸载重装,勾选之后安装,却出现以下提示(这个关都关不掉)只能靠任务管理器结束任务
后来在不懈努力下,找到了一个可以直接下载语言包,下面是我分享的(原文出处:https://blog.csdn.net/LZQ_LZQ_/article/details/105627635)
链接:https://pan.baidu.com/s/1MWkQgaMYY-9-kwhONOm3Bg
提取码:51si
下载语言包,打开tessdata文件夹,把这几个再复制到C:\Program \Tesseract-OCR\tessdata 下
然后win+R 快捷打开cmd,输入tesseract --list-langs 就可,加上我们下载的,一共有5种语言
安装pytesseract
直接在pycharm中使用pip进行安装就可
指令:pip install pytesseract
另外需要注意的是:下载pytesseract后:
找到pytesseract的安装包,C:\Python34\Lib\site-packages\pytesseract,编辑pytesseract.py文件(此步骤必须做,否则运行代码时会报错):
tesseract_cmd = 'C:/Program Files /Tesseract-OCR/tesseract.exe' -----(这个是我自己的路径)后面/tesseract.exe是需要自己加上去的
(程序网上可以自己随意找,自己也是遇到一个问题,就是截的验证码图片的位置有偏差,后来通过自己量才获得验证码图片,但是不调用第三方接口,识别度不高,难点的基本无法识别)
python自动化实现验证码登录过程的更多相关文章
- Python - Cookie绕过验证码登录
前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 另一篇博文 P ...
- IDEA+java通过SSH来进行分析日志,实现UI自动化动态验证码登录
在我写自动化脚本的时候是要真实发送验证码才能往下进行UI自动化 思路:验证码会显示在哪些地方,手机短信?数据库存储?日志? 完整代码如下: package guanyu.tools; import c ...
- Python 自动化之验证码识别
之前公司的验证码比较简单,可以采取直接破解的方式进行登录 部分代码如下: # -*- coding: utf-8 -*- from selenium import webdriver from sel ...
- Spring Security 实现手机验证码登录
思路:参考用户名密码登录过滤器链,重写认证和授权 示例如下(该篇示例以精简为主,演示主要实现功能,全面完整版会在以后的博文中发出): 由于涉及内容较多,建议先复制到本地工程中,然后在细细研究. 1. ...
- python接口自动化(Cookie_绕过验证码登录)
python接口自动化(Cookie_绕过验证码登录) 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以 ...
- Selenium2+python自动化41-绕过验证码(add_cookie)
前言 验证码这种问题是比较头疼的,对于验证码的处理,不要去想破解方法,这个验证码本来就是为了防止别人自动化登录的.如果你能破解,说明你们公司的验证码吗安全级别不高,那就需要提高级别了. 对于验证码,要 ...
- Selenium2+python自动化41-绕过验证码(add_cookie)【转载】
前言 验证码这种问题是比较头疼的,对于验证码的处理,不要去想破解方法,这个验证码本来就是为了防止别人自动化登录的.如果你能破解,说明你们公司的验证码吗安全级别不高,那就需要提高级别了. 对于验证码,要 ...
- Python 实现简单图片验证码登录
朋友说公司要在测试环境做接口测试,登录时需要传入正确的图片的验证码,本着懒省事的原则,推荐他把测试环境的图片验证码写死,我们公司也是这么做的^_^.劝说无果/(ㄒoㄒ)/~~,只能通过 OCR 技术来 ...
- Python验证码登录(Tesseract安装配置)
1.安装py库:pytesseract,PIL pip install pytesseract pip install PILLOW 如果安装时,出现权限不足: pip install --user ...
随机推荐
- GreateMan_开源
oschina: https://www.oschina.net/ Tencent: https://github.com/Tencent 360: https://github.com/Qihoo3 ...
- unity 模板测试 详解
https://blog.csdn.net/u011047171/article/details/46928463#t4
- Unity技巧集合
地址:http://blog.csdn.net/stalendp/article/details/17114135 这篇文章将收集unity的相关技巧,会不断地更新内容. 1)保存运行中的状态 uni ...
- nginx server_name 多个
nginx server_name 多个 nginx server_name 多个的话,空格隔开就行 server_name baidu.com baidu.me; 如果很多的话可以用正则,我的需求, ...
- 查看带有A-Time的执行计划
先执行 SQL> alter session set statistics_level=all; 会话已更改. 再执行SQL语句: SQL> select count(*) from tb ...
- javascript事件环微任务和宏任务队列原理
哈喽!大家好!我是木瓜太香,我又来嘞,今天来说说前端面试中经常别问到的 JS 事件环问题. JS 事件环 JS 程序的运行是离不开事件环机制的,这个机制保证在发生某些事情的时候我们有机会执行一个我们事 ...
- Linux:apache第一个简单的站点
前提: apache安装目录再/application/apache/ 1.先进入安装目录中 cd /application/apache/ ls 查看目录中的内容 可以看到好多我们常见的文件夹,bi ...
- oracle之三闪回flashback
闪回 flashback 5.1 flashback 的功能:1)利用undo data回溯或撤销提交的数据,2)flashback log 使database 可以恢复到过去某个时间点,可以作为不完 ...
- [补题]找到原序列长度k的子序列中字典序最小的那个(单调栈)
题意 题目如题,输入序列只包含小写字母,数据范围0<k<=len<=500000. 例: 输入:helloworld 输出:ellld 题解 使用单调栈.当已删掉n-k个字符,输出栈 ...
- 处理IOS浏览器在input或者textarea获取焦点后底部留一块灰色空白区域的bug
document.body.addEventListener('focusout',function() { window.scrollTo(0,0) },false);