Python有啥好的库可以识别验证码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python有啥好的库可以识别验证码相关的知识,希望对你有一定的参考价值。

参考技术A 要安装pytesseract库,必须先安装其依赖的PIL及tesseract-ocr,其中PIL为图像处理库,而后面的tesseract-ocr则为google的ocr识别引擎。 pytesseract安装 直接使用pip install pytesseract安装即可,或者使用easy_install pytesseract Python验证 参考技术B 如果重点在算法,我觉得OCR不见得能识别好验证码,比较那玩意设计的就是用来防止机器识别的。
如果只是想为了OCR而OCR:Linux和Mac的核心是一样的,应该可以通用。请贴出更多的技术细节:比如是否已经验证在Linux上好使,而同样的代码在Mac上遇到何种问题。本回答被提问者采纳

有啥好的软件可以实现录制鼠标和键盘的操作(尽量少手敲),生成脚本供python调用?

最近在搞web自动化测试,页面元素直接绘图生成无法用selenium定位元素,现在想通过录制鼠标和键盘操作生成脚本来实现(想尽快派上用场),试过按键精灵,但是生成的exe文件,勾选了自动运行或者打开多少秒后运行,python打开按键小精灵后依然不会执行,只有自己按F10才会运行,这样就和自动化测试相违背了,总不能守着电脑按F10,所以想问问有没录制软件可以实现我的需求。

Python也能象按键精灵一样模拟键鼠操作,直接用Python来做吧,该模块叫pyautogui,了解一下。

import pyautogui
print('Press Ctrl-C to quit.')
try:
    while True:
        # Get and print the mouse coordinates.
        x, y = pyautogui.position()
        positionStr = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
        print(positionStr, end='')
        print('\\b' * len(positionStr), end='', flush=True)
except KeyboardInterrupt:
    print('\\nDone.')

这是Automate_the_Boring_Stuff一书中的演示代码,用于查找当前鼠标的坐标。

追问

你说的我有实践过,要想找录制软件的初衷是组内人员不是谁都会搞python或者java,然后用例数量又巨大又想希望能尽快派上用场,所以还是想找找工具录制

追答

pyautogui 这个模块是可以发送模拟按键的啊,你调用Python脚本后,用pyautogui发送一个F10的按键消息又不会死,这样你做好的按键精灵脚本就可以用了,为什么不敢去试试呢?

import pyautogui as autoit
# 你调用按键精灵脚本的代码...
# .....
autoit.press('f10') # 此处发送F10按键。

pyautogui 所有有效的按键,参见模块内的列表变量“KEYBOARD_KEYS” 。

参考技术A 按键精灵 F10 是全局响应的

python打开按键小精灵后
python再模拟键盘按键F10不就行了 ???追问

试过。。。不行,无论VBS或者pyautogui的keydown,还有pywin32都试过了,还有其他办法么?

追答

再写一个按键精灵脚本一开始就运行着
专门用来定时运行你的另外一个脚本

参考技术B 可以啊 但是 不清楚 你的记录是什么 鼠标轨迹 还是 鼠标点击 键盘记录太简单了追问

录制记录鼠标点击的坐标和动作,例如左键点击双击右键点击,键盘的操作,包括组合键,这些记录下来后,还要可以导出脚本让python调用执行。

参考技术C Python也能象按键精灵一样模拟键鼠操作,直接用Python来做吧,该模块叫pyautogui,这款是性价比很高的

以上是关于Python有啥好的库可以识别验证码的主要内容,如果未能解决你的问题,请参考以下文章

前端算大文件的MD5值有啥好的办法么

学习图片处理和简单的验证码识别

Python开发文字点选验证码,有啥推荐的方法?

Python+TF实现验证码识别

验证码识别

基于SVM的python简单实现验证码识别