用Python实现简单的验证码识别

当我们收集数据时,我们会访问得太快或太频繁,或者一访问就弹出验证码,然后翻滚珠子。

[En]

When we collect data, we visit it too fast or frequently, or pop up the verification code as soon as we visit, and then clam beads.

用Python实现简单的验证码识别

今天,我将给你一个简单的方法来处理验证码。

[En]

Today, I will give you a simple way to deal with the CAPTCHA.

; 环境模块

本文使用的是 Python和pycharm

这里需要用到一个 ddddocr 模块 ,这是别人开源写好的一个东西,简单又好用,但是精确度差一点点,但是还是非常好用的。

如果你追求精确度的话,可以调用别人写好的一些API 。

咱们直接 win+r 弹出搜索框后输入 cmd ,点击确定弹出命令提示符窗口, 输入pip install ddddocr 即可安装。

代码展示

代码不多,非常简单。

模块安装完成后,我们先将其导入。

[En]

After the module is installed, let’s import it first.

import ddddocr

然后实例化一下,用一个 cor 接收一下这个数据。

ocr = ddddocr.DdddOcr()

我这里准备了四个验证码

分别实现一下验证码

首先我们用 with open 来读取一下这文件,读取方式使用 rb ,因为是图片的话就读取它的二进制数据

with open('img_3.png', 'rb') as f:

使用 f.read() 将数据读取出来,再自定义一个变量接收一下。

img_bytes = f.read()

然后我们通过 classification 将它传进去,把结果打印出来就可以了。

result = ocr.classification(img_bytes)
print(result)
很多孩子往往因为没有好的学习材料,不知道该学什么知识点,遇到不能及时解决的问题,而未能坚持学习。<details><summary>*<font color='gray'>[En]</font>*</summary>*<font color='gray'>Many children often fail to persist in learning because they do not have good learning materials, do not know what knowledge points to learn, and encounter problems that cannot be solved in time.</font>*</details>

我给大家准备了2022最新的Python学习路线图和学习资料、视频教程、电子书等等,都放在这个群里了,还有大佬不定时解答问题,同更多志同道合的伙伴一起学习、一起进步!

python学习交流1群:815624229 (一群已满  加2群)##

Python学习交流2群:279199867 ##

实现效果

纯数字的

用Python实现简单的验证码识别

用Python实现简单的验证码识别

字母+数字的

用Python实现简单的验证码识别

用Python实现简单的验证码识别

你可以看到,它都是完全识别的,即使上面有一些华丽的水平线或什么。

[En]

You can see that it’s all fully identified, even if there are some gaudy horizontal lines or something on it.

; 完整代码

import ddddocr

ocr = ddddocr.DdddOcr()

with open('img_3.png', 'rb') as f:
    img_bytes = f.read()

result = ocr.classification(img_bytes)
print(result)

您可以亲自尝试,也可以直接将其应用于数据收集的实践中。

[En]

You can try it yourself, or you can directly apply it to the practice of data collection.

创作不容易,请帮我订购一套。

[En]

Creation is not easy, please help me to order a collection.

Original: https://www.cnblogs.com/hahaa/p/16411939.html
Author: 轻松学Python
Title: 用Python实现简单的验证码识别

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/499215/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 重学c#系列——linq(3) [二十九]

    前言 继续介绍一些复杂的linq。 正文 groupjoin 这个函数: 有department public class Deployment { public string I…

    Python 2023年10月12日
    049
  • 做一个简单网页(做一个简单网页多少钱)

    怎样做一个简易的网页?做一个简单网页多少钱 做一个简易的普通网页比较容易。当然,制作的方法有好几种,有的是直接写代码、有的是用绘图软件绘制页面再导出网页、常用的是使用网页制作软件做…

    Python 2023年9月17日
    039
  • 使用pandas去重,要求某两列对应的行不一样时才去重

    import pandas as pd import numpy as np df_org = pd.DataFrame([[102, ‘2014/2/11 12:01’, ‘其他…

    Python 2023年8月8日
    030
  • python 全局莫兰指数和局部莫兰指数

    import esda import pandas as pd import geopandas as gpd from geopandas import GeoDataFrame…

    Python 2023年8月23日
    098
  • 机器学习和人工智能之间的区别

    💂 个人网站:【海拥 】【保卫机器人 】【骑士冒险 】【开发文档导航 】 🤟 风趣幽默的前端学习课程:👉28个案例趣学前端 💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼家…

    Python 2023年9月28日
    042
  • 数据可视化之美-动态图绘制(以Python为工具)

    可视化是数据描述的图形表示,旨在一目了然地揭示数据中的复杂信息。数据可视化在讲故事中的重要性不言而喻。 在可视化当中,我们常用的方式有点、线、面,或者说这几者组合。部分绘图结果可见…

    Python 2023年9月3日
    050
  • matplotlib绘制一行三列图(通常用做文献图片)

    使用matplotlib绘制一种经常在文献中出现的并列折线图。 附代码,并且来会单独说明一些绘制困难的点。 目录 效果图 绘图代码 1 数据元组 2.子图位置subplot设置 3…

    Python 2023年9月6日
    052
  • Python 自动化处理 Yaml 文件

    1. Yaml 是什么 Yaml是一种简洁的非标记语言。 Yaml是一个可读性高,用来表达数据序列化的格式。 Yaml以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简…

    Python 2023年5月25日
    095
  • copilot在Pycharm的应用

    2023.3.31更新 使用该软件务必将左侧代码文件全部删除! 由于被过多人用来使用chatgpt的能力,而非专注于开发,现在该平台已要求注册使用或者提供api key!注册后可以…

    Python 2023年10月24日
    050
  • Python和Numpy的加权抛硬币游戏的概率

    使用Python和Numpy的加权抛硬币游戏的概率 本周的一个简短而有趣的游戏。 两个玩家正在玩一个游戏,他们从玩家1开始抛出一枚不一定公平的硬币。第一个抛出正面的人获胜。抛出的硬…

    Python 2023年8月24日
    064
  • 大数据-hadoop-hdfs

    Hadoop 分布式文件系统(HDFS)是指被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File System)。…

    Python 2023年11月7日
    056
  • 教你判断一个 DataFrame 中数据是否在另一个 DataFrame 中

    教你判断一个 DataFrame 中数据是否在另一个 DataFrame 中 * – 创作背景 – 问题分析 – 问题解决 – 结尾…

    Python 2023年8月16日
    060
  • CSS宝典⑤-CSS布局秘籍(2)6脉神剑

    HTML系列: 人人都懂的HTML基础知识-HTML教程 HTML元素大全(1) HTML元素大全(2)-表单 CSS系列: CSS基础知识筑基 常用CSS样式属性 CSS选择器大…

    Python 2023年10月15日
    050
  • Matplotlib

    引入包: import numpy as np import matplotlib.pyplot as plt 可省略plt.show(): %matplotlib inline …

    Python 2023年9月6日
    047
  • sql 基础详细(持续更新)

    SQL基础 一、查询基础语句 查询语句的语法格式 Select * from 表名 where 条件; 具体演示 //创建一个学生成绩表 create table Student_…

    Python 2023年6月3日
    085
  • Python3 零基础自学笔记_pytest框架

    pytest命名规则 测试文件以test_开头(以_test结尾也可以) 测试类以Test开头(驼峰命名法),并且不能带有 init 方法 测试函数以test_开头 断言使用ass…

    Python 2023年9月13日
    052
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球