使用云打码识别验证码

 

1.注册开发者云打码账号:

  注册账号

2.添加新软件

  进入开发者后台->我的软件->输入软件名称(自定义)

    

  提交成功后,会返回: 软件代码即为后面的appId,通讯密匙为:appKey

    

3.下载对应的语言使用说明文档,这里以python为例:云打码说明文档

  点击下载解压就好了,解压完之后为:

    

 

4.到这里就可以干活了:打开编辑器,打开上图对应的python版本文件,这里使用python3

    简单进行修改后,就可以使用云打码进行验证码识别了

    第一回识别,会报1007,是因为没有充值,这个平带是收费的,但是我觉得挺划算的,充一块钱就能使用很多次

    调用错误代码及排错

#必须要写的否则会报错
# -*- coding: cp936 -*-

import sys
import os
from ctypes import *

# 下载接口放目录 http://www.yundama.com/apidoc/YDM_SDK.html
# 错误代码请查询 http://www.yundama.com/apidoc/YDM_ErrorCode.html
# 所有函数请查询 http://www.yundama.com/apidoc

print('>>>正在初始化...')


# 云打码API即为解压文件夹中的脚本文件,对应自己的系统版本,X64为64位,默认使用32位的
YDMApi = windll.LoadLibrary('yundamaAPI')


appId = 1  # 软件ID
appKey = b'22cc5376925e9387a23cf797cb9ba745'  # 软件密钥

print('软件ID:%d\r\n软件密钥:%s' % (appId, appKey))


username = b'test'
password = b'test'

if username == b'test':
    exit('\r\n>>>请先设置用户名密码')

# 有两种方法可以识别验证码,以下两种办法使用其一即可

#方法一. 一键识别函数

print('\r\n>>>正在一键识别...')

# 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.html
codetype = 1004

# 分配30个字节存放识别结果
result = c_char_p(b"                              ")

# 识别超时时间 单位:秒
timeout = 60

# 验证码文件路径
filename = b'getimage.jpg'

# 一键识别函数,无需调用 YDM_SetAppInfo 和 YDM_Login,适合脚本调用
captchaId = YDMApi.YDM_EasyDecodeByPath(username, password, appId, appKey, filename, codetype, timeout, result)

print("一键识别:验证码ID:%d,识别结果:%s" % (captchaId, result.value))



#方法二.普通识别函数

print('\r\n>>>正在登陆...')

# 第一步:初始化云打码,只需调用一次即可
YDMApi.YDM_SetAppInfo(appId, appKey)

# 第二步:登陆云打码账号,只需调用一次即可
uid = YDMApi.YDM_Login(username, password)

if uid > 0:

    print('>>>正在获取余额...')

    # 查询账号余额,按需要调用
    balance = YDMApi.YDM_GetBalance(username, password)

    print('登陆成功,用户名:%s,剩余题分:%d' % (username, balance))

    print('\r\n>>>正在普通识别...')

    # 第三步:开始识别

    # 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.html
    codetype = 1004

    # 分配30个字节存放识别结果
    result = c_char_p(b"                              ")

    # 验证码文件路径
    filename = b'getimage.jpg'

    # 普通识别函数,需先调用 YDM_SetAppInfo 和 YDM_Login 初始化
    captchaId = YDMApi.YDM_DecodeByPath(filename, codetype, result)

    print("普通识别:验证码ID:%d,识别结果:%s" % (captchaId, result.value))
    #返回bytes格式字符串 , 转为utf-8编码,方便带入程序直接使用
    utf_res = result.value.decode('utf-8')

else:
    print('登陆失败,错误代码:%d' % uid)


print('\r\n>>>错误代码请查询 http://www.yundama.com/apidoc/YDM_ErrorCode.html')

云打码的识别效果还不错,也不贵,建议大家使用

如有问题,欢迎交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
为了使用码平台进行验证码识别,首先需要准备好Python开发环境,并安装request库。然后注册码平台,获取自己的密钥。下面是一个示例代码来解析获取到的图片验证码使用码平台进行识别: ```python # 导入所需的库 import requests import json # 解析取到的图片验证码 def common_verify(image_base64): imageDate = { "image": image_base64, "token": "填写自己的密钥", "type": "填写验证码的类型" } response = requests.post("https://www.jfbym.com/api/YmServer/verifyapi", headers=headers1, data=json.dumps(imageDate), proxies=proxies) global imgyzm imgyzm = response.json()['data']['data'] print(imgyzm) # 注意:传入的image_base64为图片的base64编码格式,请根据实际情况进行修改。 # 需要根据验证码的类型进行修改type。 # 以上内容仅供参考学习。 ``` 需要注意的是,以上代码中的image_base64为图片的base64编码格式,请根据实际情况进行修改。另外,根据验证码的类型进行相应的修改type。 此外,第一次识别可能会报1007的错误,这是因为没有充值。码平台是收费的,但是充值一块钱就能使用很多次,所以是相对划算的。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [python:验证码识别](https://blog.csdn.net/weixin_46806491/article/details/126431376)[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_2"}}] [.reference_item style="max-width: 50%"] - *2* [使用打码识别验证码](https://blog.csdn.net/weixin_42536182/article/details/100971193)[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_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不止于python

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值