Python3版本Django实现免费极验验证码
Demo代码已放上GitHub,实现登录短信校验+极验验证
https://github.com/ChenJhua/TestLogin
1.先到极验验证网站注册一个账号,登录上去
2.创建应用
3.出现如下的id和key
4.可以根据安装指引自行学习,也可以按我步骤来
极验验证码
在form表单添加代码
提交按钮id必须为:id=”embed-submit”
后面使用ajax时使用
css代码块:
/* 极验验证的样式 */
#embed-captcha {width:300px;margin:0 auto;}
.show {display:block;
}
.hide {display:none;
}
#notice {color:red;
}
{# 极验验证 #}
<div id="embed-captcha"></div>
<p id="wait" class="show">正在加载验证码......</p>
<p id="notice" class="hide">请先拖动验证码到相应位置</p>
<input type="submit" name="" value="登录" class="input_submit" id="embed-submit">
js代码块
<script>var handlerEmbed = function (captchaObj) {$("#embed-submit").click(function (e) {var validate = captchaObj.getValidate();if (!validate) {$("#notice")[0].className = "show";setTimeout(function () {$("#notice")[0].className = "hide";}, 1000);e.preventDefault();}});// 将验证码加到id为captcha的元素里,同时会有三个input的值:geetest_challenge, geetest_validate, geetest_seccodecaptchaObj.appendTo("#embed-captcha");captchaObj.onReady(function () {$("#wait")[0].className = "hide";});// 更多接口参考:http://www.geetest.com/install/sections/idx-client-sdk.html};$.ajax({// 获取id,challenge,success(是否启用failback)url: "/user/pc-geetest/register?t=" + (new Date()).getTime(), // 加随机数防止缓存type: "get",dataType: "json",success: function (data) {// 使用initGeetest接口// 参数1:配置参数// 参数2:回调,回调的第一个参数验证码对象,之后可以使用它做appendTo之类的事件initGeetest({gt: data.gt,challenge: data.challenge,product: "embed", // 产品形式,包括:float,embed,popup。注意只对PC版验证码有效offline: !data.success // 表示用户后台检测极验服务器是否宕机,一般不需要关注// 更多配置参数请参见:http://www.geetest.com/install/sections/idx-client-sdk.html#config}, handlerEmbed);}});</script>
url配置:
# 极验验证url(r'^pc-geetest/register', views.pcgetcaptcha, name='pcgetcaptcha'),
视图views.py:
# 极验验证,请在官网申请ID使用,示例ID不可使用
pc_geetest_id = "910*****************************01" # id
pc_geetest_key = "73d****************************03" # keydef pcgetcaptcha(request):"""极验验证函数"""user_id = 'test'gt = GeetestLib(pc_geetest_id, pc_geetest_key)status = gt.pre_process(user_id)request.session[gt.GT_STATUS_SESSION_KEY] = statusrequest.session["user_id"] = user_idresponse_str = gt.get_response_str()return HttpResponse(response_str)
成功后会出现极验验证码,显示正在加载时需要等待一下,请求别人的网络还没生成验证码,这个验证码已经自带校验是否输入验证码,验证码是否正确:
Python3版本Django实现免费极验验证码相关推荐
- Python3版本Django实现免费手机验证码注册
Demo代码已放上GitHub,实现登录短信校验+极验验证 https://github.com/ChenJhua/TestLogin 打开网站互亿无线注册一个账号,有50条免费短信 登录进去后会有以 ...
- [639]极验验证码破解分析
极验验证码相关文档:http://www.wzdr.cn/article-725.html 极验验证码登录注册地址:http://jiyan.c2567.com/index.php/login/ind ...
- selenium破解B站极验验证码
最近刚接触python爬虫,跟大多数人一样网上视频+书籍的形式学习,不过有java基础,是直接跳过前几章内容,上手就是撸selenium模拟登陆知乎,过程倒是不难,这让我信心大增. 于是就想尝试有极验 ...
- Discuz论坛中切换极验验证码插件语言
Discuz论坛中切换极验验证码插件语言 极验验证码插件网址 将验证码按钮的语言切换成英文 解决发帖时没有完整验证码时添加弹出的提示(改成英文) 极验验证码插件网址 http://www.geetes ...
- php极验验证码识别,全新极验验证码 - 为你的FastAdmin添加上AI智能验证码 – 基于ThinkPHP和Bootstrap的极速后台开发框架...
本插件启用后,前后台的验证码都将替换为极验验证码,无需要修改任何其它代码. 常见问题 1.为什么后台登录没有验证码?这是由于后台默认是启用验证码登录的,首先需要开启后台登录验证码功能,开启方法是修改a ...
- 极验验证码破解之selenium
这一篇写完很久了,因为识别率一直很低,没办法拿出来见大家,所以一直隐藏着,今天终于可以拿出来见见阳光了. 哈喽,大家好,我是星星在线,我又来了,今天给大家带来的是极验验证码的selenium破解之法, ...
- 极验验证码逆向(一)
记录一次处理极验验证码的心路历程.(主要是看到现有的方法都是通过selenium去模拟拖动
- 验证码的识别(极验验证码)
本文介绍了几种常见的验证码类型以及它们的识别方法,包括图形验证码.极验滑动验证码.点触验证码和微博宫格验证码等.其中,针对图形验证码的识别方法是使用OCR技术,并且需要安装tesserocr库.我们可 ...
- 极验验证码行为模拟(成功率90%以上)
这期我来玩一点黑科技的东西 最近有同事在搞爬虫时碰到了极验的第二代拖动式验证码,让我帮忙给研究一下. 于是乎我从极验官网下了demo在看.又通过网上其他同学的思路,大概研究出来了. 本人声明:我只是出 ...
最新文章
- 复制数据表的两种情况。
- Linux中与命令相关的命令
- python下载大文件-python requests 下载大文件不完整
- NLP word2vec 计算优化
- 为什么静态方法中不可以直接访问非静态方法?
- 用ASP.NET向Javascript传递变量
- js动画 无缝轮播 进度条 文字页面展示 div弹窗遮罩效果
- Echarts饼图自定义颜色配置(图色、选择颜色、字体颜色)
- 1038 Recover the Smallest Number
- Java中的Math函数常用方法总结
- 像163邮箱一样的上传附件。。
- 基于python网络爬虫天气_Python网络爬虫之中国天气网
- MATLAB:预设矩阵的大小与不预设的时间差距
- 网络打印服务器存打印文件,网络打印机文件打印顺序问题
- 一个会发邮件的Java
- 傅里叶变换和拉普拉斯变换的物理解释及区别
- DYA9面向对象中--多态
- 杨守鸿 计算机学院,计算机学院军训师生慰问暨新生见面会顺利举办
- Linux下的磁盘加密方法
- lua如何判断是否支持cookie_如何判断电磁炉是否故障?