Python爬虫:验证码识别(图片链接和图片base64字符串)

0x00 写在前面

爬取数据,自动化的验证码验证是绕不开的,当然,验证码的自动识别其实都是调用其他api,在这里把这几天学习遇到过的验证码识别总结一下

0x01 验证码src里有图片的base64加密字符串

话不多说先上图

在这里插入图片描述
如图,这里的src获得的是经base64加密后的图片字符串,如下

src="https://img-blog.csdnimg.cn/2022010707433569853.png"

其中,在base64,后的是加密的字符串,我们把它解密就可以得到
在这里插入图片描述
会有很多乱码不过不影响,我们可以看出这其实就是png的文件格式的数据,也就代表我们刚才那张图片,我们可以用python自带的b64解密并将数据写入png格式的文件中,就能得到我们想要的验证码,接着再把验证码文件上传到识别验证码的api接口就行了,当然,也有的api可以直接接受base64加密后的图片字符串,比如超级鹰

在这里插入图片描述
只要提供了相关数据的接口,我们也就可以写出提交base64的方法函数

	def PostBase64(self, b64, codetype):
        """
                b64: 图片文件base64字符串
                codetype: 题目类型 参考 http://www.chaojiying.com/price.html
                """
        params = {
   
            'codetype': codetype,
            'file_base64': b64
        }
        params.update(self.base_params)
        r = requests.post('http://upload.chaojiying.net/Upload/Processing.php', data=params, headers
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python爬虫中的图片验证码可以通过OCR技术进行识别。可以使用Python的第三方库tesserocr来实现简单验证码的识别。对于没有噪声干扰的验证码,可以直接使用这个库进行识别。但是对于有噪声干扰的验证码,需要先对图片进行预处理,如灰度化和二值化,然后再进行识别,以提高识别率。 另一种图片验证码是滑动式验证码。对于这种验证码,可以采用模板匹配的方法。思路就是将所有出现的验证码保存下来,并与出现的验证码进行像素比较,找出不同的验证码。根据滑动顺序给不同的验证码命名,然后使用selenium模拟滑动操作。 学习Python技术可以帮助你更好地处理爬虫中的验证码问题。Python爬虫领域非常受欢迎,学好Python可以为你的就业和副业赚钱提供更多机会。如果你想学习Python,建议你制定一个学习规划,并寻找一些全套的Python学习资料来帮助你入门。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Python爬虫四种验证码的解决思路](https://blog.csdn.net/weixin_55154866/article/details/128503790)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值