python实现腾讯滑块验证码识别


Posted in Python onApril 27, 2021

腾讯滑块验证码识别,识别凹槽的x轴位置,mock滑块的加速度。该项目公开API,提供识别和加速度模拟部分,第二部分模拟滑动进行识别返回数据请求

项目地址:https://github.com/zhaojunlike/python-tecent-slider-crack

安装python环境

参考:https://janikarhunen.fi/how-to-install-python-3-6-1-on-centos-7

sudo yum install https://centos7.iuscommunity.org/ius-release.rpm
sudo yum install python36u
python3.6 -V
sudo yum install python36u-pip
sudo yum install python36u-devel

创建环境 Creating a virtualenv

python3.6 -m venv venv
. venv/bin/activate
pip install [package_name]
# 安装依赖
pip install -r requirements.txt

daemonize 运行

# 参考 https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uswgi-and-nginx-on-ubuntu-18-04
# Install the latest stable release:
pip install uwsgi
# ... or if you want to install the latest LTS (long term support) release,
pip install https://projects.unbit.it/downloads/uwsgi-lts.tar.gz

# 创建ln 
cp captcha.service /etc/systemd/system/captcha.service
systemctl enable captcha.service
systemctl start captcha.service
uwsgi --ini /usr/local/nginx/html/myblog/uwsgiconfig.ini

#后台运行
uwsgi --ini /usr/local/nginx/html/myblog/uwsgiconfig.ini --daemonize /usr/local/nginx/html/myblog/myblog.out

nginx做代理

location /tx/ {
            add_header Access-Control-Allow-Origin *;
            include        uwsgi_params;
            uwsgi_pass     127.0.0.1:8008;
        }

访问api

请求图片识别和加速度模拟

http://127.0.0.1:5000/tx/image

POST /tx/image HTTP/1.1
Host:host
Content-Type: application/json
Accept: */*
Cache-Control: no-cache
Accept-Encoding: gzip, deflate
Content-Length: 1055
Connection: keep-alive
cache-control: no-cache

{
    "url": "图片的地址"
}

返回数据

{
    "data": {
        "list": [],//模拟的点
        "url": "",//图片地址
        "x": 515,// x轴的偏移量
    },
    "message": "解析成功"
}

模拟浏览器移动

const slider = {width: 680, point: 0, move: 0, steps: 0, posX: 0};//原本的高度
            //开始计算移动的距离
            slider.point = bgSize.width / slider.width * x;
            slider.move = handle.x + slider.point - 5;
            slider.steps = Math.random() * 100 / 30 + 100;
            slider.posX = handle.x + handle.width / 2;

            logger.info(`开始识别和移动滑块`, slider);

            //滑块的位置
            await page.mouse.move(slider.posX, handle.y + handle.height / 3, {steps: slider.steps});
            await page.mouse.down();
            let val = handle.x;
            for (let i = 0; i < traces.length; i++) {
                val += bgSize.width / slider.width * (traces[i]);//缩放距离
                slider.move = val;
                if (val <= slider.posX) continue;
                await page.mouse.move(slider.move, handle.y + handle.height / 2 + 5);
            }
            await page.waitFor(100);
            await page.mouse.up();

 

验证码识别成功后悔返回验证识别结果的Ticket

python实现腾讯滑块验证码识别

协议

授权协议:只允许研究、学习目的的分享、使用、修改,不允许任何商业用途。

原文地址:https://segmentfault.com/a/1190000020618430

以上就是python实现腾讯滑块验证码识别的详细内容,更多关于python 滑块验证码识别的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python列表与元组详解实例
Nov 01 Python
Windows下安装python2.7及科学计算套装
Mar 05 Python
Python Sqlite3以字典形式返回查询结果的实现方法
Oct 03 Python
解决Python requests 报错方法集锦
Mar 19 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
Python TCP通信客户端服务端代码实例
Nov 21 Python
将python依赖包打包成window下可执行文件bat方式
Dec 26 Python
python全局变量引用与修改过程解析
Jan 07 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
Feb 23 Python
基于pygame实现童年掌机打砖块游戏
Feb 25 Python
python使用隐式循环快速求和的实现示例
Sep 11 Python
Django-Scrapy生成后端json接口的方法示例
Oct 06 Python
python实现调用摄像头并拍照发邮箱
Apr 27 #Python
django如何自定义manage.py管理命令
Apr 27 #Python
Python爬虫之爬取二手房信息
七个Python必备的GUI库
Python实战之用tkinter库做一个鼠标模拟点击器
Python基础之pandas数据合并
上手简单,功能强大的Python爬虫框架——feapder
You might like
PHP的命令行命令使用指南
2015/08/18 PHP
WordPress迁移时一些常见问题的解决方法整理
2015/11/24 PHP
PHP实现从上往下打印二叉树的方法
2018/01/18 PHP
PHP实现的pdo连接数据库并插入数据功能简单示例
2019/03/30 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
2019/06/13 PHP
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
JS执行删除前的判断代码
2014/02/18 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
jquery实现页面虚拟键盘特效
2015/08/08 Javascript
基于Vue.js实现数字拼图游戏
2016/08/02 Javascript
ie下js不执行的几种可能
2017/02/28 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
vue-quill-editor实现图片上传功能
2017/08/08 Javascript
Vue实现美团app的影院推荐选座功能【推荐】
2018/08/29 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
jquery拖拽自动排序插件使用方法详解
2020/07/20 jQuery
Vue数据绑定简析小结
2019/05/07 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
jQuery zTree树插件的使用教程
2019/08/16 jQuery
vue实现短信验证码登录功能(流程详解)
2019/12/10 Javascript
在vue-cli创建的项目中使用sass操作
2020/08/10 Javascript
python读取LMDB中图像的方法
2018/07/02 Python
IntelliJ IDEA安装运行python插件方法
2018/12/10 Python
Python实现定时执行任务的三种方式简单示例
2019/03/30 Python
pyinstaller打包单个exe后无法执行错误的解决方法
2019/06/21 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
2020/03/02 Python
django 多数据库及分库实现方式
2020/04/01 Python
keras load model时出现Missing Layer错误的解决方式
2020/06/11 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
用HTML5.0制作网页的教程
2010/05/30 HTML / CSS
HTML5+css3:3D旋转木马效果相册
2017/01/03 HTML / CSS
意大利在线药房:Saninforma
2021/02/11 全球购物
信访工作者先进事迹
2014/01/17 职场文书
2014年教研室工作总结
2014/12/06 职场文书
Go并发4种方法简明讲解
2022/04/06 Golang