使用Python高效解决携程中文点选验证码识别并自动登陆的方法

 更新时间:2026年03月18日 09:22:33   作者:NiYouDu2333  
这两天有一个业务需求,需要登陆不同的携程账号获取订单信息,但是由于携程有验证码检测机制,而且是个中文验证码比较难识别,所以本文试着给大家介绍了如何使用Python高效解决携程中文点选验证码识别并自动登陆的方法,需要的朋友可以参考下

这两天有一个业务需求,需要登陆不同的携程账号获取订单信息,但是由于携程有验证码检测机制,而且是个中文验证码比较难识别,试了几家人工打码平台,要么贵,要么延时高,要么没办法24小时运行。最后总算让我找到一个可以通过机器识别出来的API接口,准确率超级高而且延迟只有0.03s左右。(不算上传图片的时间)

首先看一下携程验证码长啥样。。。

携程验证码分为小图和大图部分,小图部分如下:

大图部分的样子如下: 

原理是要先识别小图的文字,然后点击到大图对应文字的正确位置。

这里借助了图灵验证码识别平台,不是人工打码的,所以识别很快,准确率也挺高:

在线图片验证码识别平台-图像验证码识别打码平台-图片验证码打码平台-图灵

官网网址:http://fdyscloud.com.cn

进入图灵验证码识别平台,点击中文类型: 

可以看到图灵识别平台提供的几个中文识别模型。我们这里需要用到的就是 中文通用类型 和 图片识别类型9。分别点进去,会告诉你对应的模型ID和接口的调用方式。

我们也可以直接在网站上先上传图片测试一下该模型的识别效果,如下图:

可以看到效果是很好的,所有的字和位置都识别得相当准确!牛!

废话不多说,直接发调用的Python代码吧,其实网站上也写得很详细了。

小图部分识别:

import base64
import json
import requests
# 复制以下代码,只需填入自己的账号密码、待识别的图片路径即可。
# 关于ID:选做识别的模型ID,会自动生成,无需修改。
def b64_api(username, password, img_path, ID):
    with open(img_path, 'rb') as f:
        b64_data = base64.b64encode(f.read())
    b64 = b64_data.decode()
    data = {"username": username, "password": password, "ID": ID, "b64": b64}
    data_json = json.dumps(data)
    result = json.loads(requests.post("http://www.tulingtech.xyz/tuling/predict", data=data_json).text)
    return result
if __name__ == "__main__":
    img_path = "C:/Users/Administrator/Desktop/file.jpg"
    result = b64_api(username="你的账号", password="你的密码", img_path=img_path, ID="82927344")
    print(result)

大图部分识别:

import base64
import json
import requests

# 复制以下代码,只需填入自己的账号密码、待识别的图片路径即可。
# 关于ID:选做识别的模型ID,会自动生成,无需修改。

def b64_api(username, password, img_path, ID):
    with open(img_path, 'rb') as f:
        b64_data = base64.b64encode(f.read())
    b64 = b64_data.decode()
    data = {"username": username, "password": password, "ID": ID, "b64": b64}
    data_json = json.dumps(data)
    result = json.loads(requests.post("http://www.tulingtech.xyz/tuling/predict", data=data_json).text)
    return result

if __name__ == "__main__":
    img_path = "C:/Users/Administrator/Desktop/file.jpg"
    result = b64_api(username="你的账号", password="你的密码", img_path=img_path, ID="09322322")
    print(result)

两者​除了post data里面的模型ID值不一样,其他部分都是一样的。

至此彻底解决了携程中文点选验证码的识别问题!!!

到此这篇关于使用Python高效解决携程中文点选验证码识别并自动登陆的方法的文章就介绍到这了,更多相关Python解决携程中文点选验证码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python自动修改电脑静态IP地址的实现示例

    Python自动修改电脑静态IP地址的实现示例

    通过Python自动修改电脑的静态IP地址可以极大地提高我们的工作效率,减少手动修改IP地址带来的错误,本文就来介绍一下Python自动修改电脑静态IP地址的实现示例,感兴趣的可以了解一下
    2023-11-11
  • python RabbitMQ 使用详细介绍(小结)

    python RabbitMQ 使用详细介绍(小结)

    这篇文章主要介绍了python RabbitMQ 使用详细介绍(小结),详细的介绍了RabbitMQ的概念以及使用,对学习RabbitMQ有一定的帮助,非常具有实用价值,需要的朋友可以参考下
    2018-11-11
  • Python实现批量修改电脑Windows注册表

    Python实现批量修改电脑Windows注册表

    Windows 注册表是系统的中央配置数据库,几乎所有系统行为都可以通过注册表控制,下面我们就来看看如何使用Python 的 winreg 和 wmi 模块实现注册表的批量读写,备份恢复和远程操作吧
    2026-05-05
  • Python实现读写INI配置文件的方法示例

    Python实现读写INI配置文件的方法示例

    这篇文章主要介绍了Python实现读写INI配置文件的方法,结合实例形式分析了Python针对ini配置文件的读写操作类定义及使用方法,需要的朋友可以参考下
    2018-06-06
  • python命令行执行方法及技巧分享

    python命令行执行方法及技巧分享

    这篇文章主要介绍了Python编程中使用命令行工具的基本操作和进阶技巧,通过编写Python脚本,理解Python解释器,以及在命令行中执行脚本,可以实现数据处理和系统任务的自动化,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Python桌面应用开发实战之PyQt的安装使用

    Python桌面应用开发实战之PyQt的安装使用

    这篇文章主要给大家介绍了关于Python桌面应用开发实战之PyQt的安装使用,PyQt是一个功能强大的Python库,用于创建图形用户界面(GUI)应用程序,需要的朋友可以参考下
    2023-08-08
  • linux下python中文乱码解决方案详解

    linux下python中文乱码解决方案详解

    这篇文章主要介绍了linux下python中文乱码解决方案详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 详解Python中Pyyaml模块的使用

    详解Python中Pyyaml模块的使用

    这篇文章主要介绍了Python中Pyyaml模块的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • python regex库实例用法总结

    python regex库实例用法总结

    在本篇内容里小编给大家整理了关于python regex库实例用法总结内容,有需要的朋友们参考学习下。
    2021-01-01
  • PyTorch学习笔记之回归实战

    PyTorch学习笔记之回归实战

    这篇文章主要介绍了PyTorch学习笔记之回归实战,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05

最新评论