首页 > 其他分享 >京东创作平台旋转验证码识别

京东创作平台旋转验证码识别

时间:2024-11-06 16:47:39浏览次数:5  
标签:img format base64 验证码 str 京东 识别 data

 

昨天京东创作平台验证码又更新了,变成了这种旋转验证码。经过我们一天的努力,终于完成了这款验证码的数据标记,模型训练。现在正确率达到了几乎100%。

识别代码

只需要获取图片链接,下载图片得到原图,使用下面代码就可以识别角度,然后根据角度计算滑动距离,就可以自动完成验证

import base64
import requests
import datetime
from io import BytesIO
from PIL import Image

t1 = datetime.datetime.now()

#PIL图片保存为base64编码
def PIL_base64(img, coding='utf-8'):
    img_format = img.format
    if img_format == None:
        img_format = 'JPEG'

    format_str = 'JPEG'
    if 'png' == img_format.lower():
        format_str = 'PNG'
    if 'gif' == img_format.lower():
        format_str = 'gif'

    if img.mode == "P":
        img = img.convert('RGB')
    if img.mode == "RGBA":
        format_str = 'PNG'
        img_format = 'PNG'

    output_buffer = BytesIO()
    # img.save(output_buffer, format=format_str)
    img.save(output_buffer, quality=100, format=format_str)
    byte_data = output_buffer.getvalue()
    base64_str = 'data:image/' + img_format.lower() + ';base64,' + base64.b64encode(byte_data).decode(coding)
    # base64_str = base64.b64encode(byte_data).decode(coding)

    return base64_str

# 加载图片
img1 = Image.open(r'E:\Python\lixin_project\OpenAPI接口测试\test_img\64-1.png')
# 图片转base64
img1_base64 = PIL_base64(img1)

# 验证码识别接口
url = "http://www.detayun.cn/openapi/verify_code_identify/"
data = {
    # 用户的key
    "key":"KJDwmNcZzN4wCyPY0aaX",
    # 验证码类型
    "verify_idf_id":"64",
    # 样例图片
    "img_base64":img1_base64,
}
header = {"Content-Type": "application/json"}

# 发送请求调用接口
response = requests.post(url=url, json=data, headers=header)

# 获取响应数据,识别结果
print(response.text)
print("耗时:", datetime.datetime.now() - t1)

angle = response.json()['data']['angle']
# 旋转矫正效果
rot = img1.rotate(-angle)
rot.show()

这里有详细的说明文档:https://www.detayun.cn/tool/verifyCodeIdentifyPage/?verify_idf_id=64

想了解更多验证码识别请访问:得塔云

标签:img,format,base64,验证码,str,京东,识别,data
From: https://blog.csdn.net/2201_75821470/article/details/143571008

相关文章

  • 违规抽烟识别智慧矿山一体机烟雾检测识别风险闭环管理功能详述
    在现代矿山安全管理中,风险隐患的及时发现和有效处置是保障作业安全、减少事故发生的关键。随着人工智能和视频监控技术的发展,智慧矿山一体机应运而生,它通过集成视频AI智能分析和远程视频巡查功能,为矿山安全管理带来了革命性的变革。智慧矿山一体机是一款专为矿山场景设计的智能......
  • 皮带运行状态识别智慧矿山一体机人员乘坐皮带识别针对物的不安全状态的算法保障
    在矿山行业,安全生产始终是最为重要的议题。随着科技的进步,尤其是人工智能和物联网技术的发展,智慧矿山的概念应运而生,旨在通过智能化手段提升矿山的安全管理水平,减少事故发生,保障人员和设备的安全。在这样的背景下,智慧矿山一体机应运而生,它不仅代表了智能化技术在矿山安全管理中......
  • 京东物流-智能运输调度系统方案 荣获IF、红点国际设计大奖
    作者:京东物流王文玲   前言京东集团企业文化升级后,「以技术为本,让生活更美好」成为京东人的使命,在「创新」价值观引导下,设计师基于对物流业务领域持续深耕,自驱发起智能调度解决方案的创新思考,推演得到智能物流运输调度系统概念方案,经过投稿先后获得设计领域国际影响力较......
  • 数据科学在京东物流关键角色与前沿应用探索
    作者:京东物流何平小编之所以选择这个话题,是希望帮助大家更全面地理解数据科学的概念。数据科学是一个广泛而深刻的领域,不仅仅是数据分析、机器学习或大模型的代名词。它的核心在于如何更有效地挖掘数据背后的价值,将数据转化为业务驱动力。最终,通过数据科学实现成本优化、效率......
  • 轻松识别报关单文字信息,翔云API海关报关单如何集成
    在全球化贸易和国际物流日益增长的今天,报关单是企业进出口活动中不可或缺的文件。报关单不仅记录了商品的进口和出口信息,还直接影响到海关的放行、货物的运输效率以及相关税费的计算。然而,传统的人工录入和处理报关单信息的方式,往往存在效率低下、错误频发等问题。为助力解决......
  • Crystal 实现文字识别程序
    在本篇文章中,我们将使用Crystal编程语言手动实现一个简单的文字识别程序。Crystal是一种高性能的编程语言,具有Ruby的简洁语法,但编译成高效的机器代码。环境准备首先,确保你已安装Crystal。可以通过Crystal的官方网站下载并安装。接着,我们需要一个用于图像处理的库,例如I......
  • 基于OCaml的识别程序
    在本文中,我们将创建一个使用OCaml进行基本文字识别的程序。该程序将利用图像处理库来读取并识别图像中的文本。我们将实现一个简单的功能,首先加载图像,然后将其转换为灰度图像,最后提取文字。环境准备首先,确保你已经安装了OCaml和相关的图像处理库。我们将使用ocaml-gd和ocaml-tes......
  • 阿里云手机验证码
    阿里云手机验证码在Java中使用阿里云的短信服务发送手机号验证码,你需要使用阿里云提供的SMSSDK。添加依赖<dependency><groupId>com.aliyun.dysmsapi</groupId><artifactId>dysmsapi</artifactId><version>1.0.0</version></dependency>......
  • EasyCaptcha验证码图
    EasyCaptcha在Java中实现EasyCaptcha工具类可以生成验证码,使用图像或简单的数学问题进行验证。官方文档。引入依赖<dependency><groupId>com.github.whvcse</groupId><artifactId>easy-captcha</artifactId></dependency>验证码工具的API介绍publicclass......
  • 使用 R 语言实现简单的文字识别程序
    在这篇文章中,我们将使用R语言来实现一个简单的文字识别程序。R语言是一个强大的统计计算与数据分析语言,通常被用于数据科学和统计分析中。我们将手动编写图像处理和字符识别步骤,演示如何利用R来完成文字识别任务。环境准备首先,你需要安装R和一些必要的包。可以从R的官......