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 20 Python
Python3 处理JSON的实例详解
Oct 29 Python
python在每个字符后添加空格的实例
May 07 Python
Python中的集合介绍
Jan 28 Python
深入理解Python异常处理的哲学
Feb 01 Python
Python3实现的简单三级菜单功能示例
Mar 12 Python
Python数据分析pandas模块用法实例详解
Nov 20 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
Jan 10 Python
Python字符串中删除特定字符的方法
Jan 15 Python
python实现扫雷游戏
Mar 03 Python
理解Django 中Call Stack机制的小Demo
Sep 01 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
python实现调用摄像头并拍照发邮箱
Apr 27 #Python
django如何自定义manage.py管理命令
Apr 27 #Python
Python爬虫之爬取二手房信息
七个Python必备的GUI库
Python实战之用tkinter库做一个鼠标模拟点击器
Python基础之pandas数据合并
上手简单,功能强大的Python爬虫框架——feapder
You might like
php使用parse_url和parse_str解析URL
2015/02/22 PHP
手把手编写PHP框架 深入了解MVC运行流程
2016/09/19 PHP
JQuery 国际象棋棋盘 实现代码
2009/06/26 Javascript
讨论javascript(一)工厂方式 js面象对象的定义方法
2009/12/15 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
2011/01/11 Javascript
js导航菜单(自写)简单大方
2013/03/28 Javascript
from 表单提交返回值用post或者是get方法实现
2013/08/21 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
2013/12/30 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
js实现仿百度瀑布流的方法
2015/02/05 Javascript
Windows系统中安装nodejs图文教程
2015/02/28 NodeJs
js实现两点之间画线的方法
2015/05/12 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
2017/10/30 Javascript
layui插件表单验证提交触发提交的例子
2019/09/09 Javascript
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
Python的Flask框架中的Jinja2模板引擎学习教程
2016/06/30 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
Python除法之传统除法、Floor除法及真除法实例详解
2019/05/23 Python
使用OpCode绕过Python沙箱的方法详解
2019/09/03 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
python名片管理系统开发
2020/06/18 Python
python 读取.nii格式图像实例
2020/07/01 Python
Python使用for生成列表实现过程解析
2020/09/22 Python
python 绘制场景热力图的示例
2020/09/23 Python
世界上最受欢迎的钓鱼诱饵:Rapala
2019/05/02 全球购物
意大利辅助药品、药物和补品在线销售:FarmaEurope
2020/04/29 全球购物
庆元旦迎新年广播稿
2014/02/18 职场文书
家庭贫困证明书(3篇)
2014/09/15 职场文书
2015年招聘工作总结
2014/12/12 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
2015年前台文员工作总结
2015/05/18 职场文书
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技