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正则表达式去掉数字中的逗号(python正则匹配逗号)
Dec 25 Python
Python 遍历子文件和所有子文件夹的代码实例
Dec 21 Python
python中的字符串内部换行方法
Jul 19 Python
Python+OpenCV采集本地摄像头的视频
Apr 25 Python
numpy和pandas中数组的合并、拉直和重塑实例
Jun 28 Python
python梯度下降算法的实现
Feb 24 Python
Python验证码截取识别代码实例
May 16 Python
Python StringIO及BytesIO包使用方法解析
Jun 15 Python
安装Anaconda3及使用Jupyter的方法
Oct 27 Python
Python 随机按键模拟2小时
Dec 30 Python
python openpyxl模块的使用详解
Feb 25 Python
python unittest单元测试的步骤分析
Aug 02 Python
python实现调用摄像头并拍照发邮箱
Apr 27 #Python
django如何自定义manage.py管理命令
Apr 27 #Python
Python爬虫之爬取二手房信息
七个Python必备的GUI库
Python实战之用tkinter库做一个鼠标模拟点击器
Python基础之pandas数据合并
上手简单,功能强大的Python爬虫框架——feapder
You might like
PHPlet在Windows下的安装
2006/10/09 PHP
也谈截取首页新闻 - 范例
2006/10/09 PHP
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
2014/06/12 PHP
PHP实现利用MySQL保存session的方法
2014/08/23 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
轻松创建nodejs服务器(6):作出响应
2014/12/18 NodeJs
Node.js 异步编程之 Callback介绍(一)
2015/03/30 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
JavaScript的Ext JS框架中的GridPanel组件使用指南
2016/05/21 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
详解微信小程序 通过控制CSS实现view隐藏与显示
2017/05/24 Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
2017/06/01 Javascript
利用jQuery异步上传文件的插件用法详解
2017/07/19 jQuery
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
动态加载JavaScript文件的3种方式
2018/05/05 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
2018/09/15 Javascript
javascript中函数的写法实例代码详解
2018/10/28 Javascript
JavaScript格式化json和xml的方法示例
2019/01/22 Javascript
Vue使用vue-recoure + http-proxy-middleware + vuex配合promise实现基本的跨域请求封装
2019/10/21 Javascript
[46:25]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第二局
2016/03/05 DOTA
Python+matplotlib+numpy实现在不同平面的二维条形图
2018/01/02 Python
一个月入门Python爬虫学习,轻松爬取大规模数据
2018/01/03 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
通过实例解析python and和or使用方法
2020/11/14 Python
python tkinter实现连连看游戏
2020/11/16 Python
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
蔻驰意大利官网:COACH意大利
2019/01/16 全球购物
大学生军训自我评价分享
2013/11/09 职场文书
单位委托书怎么写
2014/08/02 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
模范教师事迹材料
2014/12/16 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
美丽人生观后感
2015/06/03 职场文书
三严三实·严以用权心得体会
2016/01/12 职场文书