京东价格监控软件开发技术探讨九:C#判断京东登录是否需要验证码
来源:互联网 发布:java编程九九乘法表 编辑:程序博客网 时间:2024/04/30 02:14
项目组为了实现通过C#编程自动登录京东商城,通过查阅网上资料,不间断的重复测试,终于找到了比较可靠的方法。但是如何判断验证码是否需要输入,是项目组遇到的又一个难题。
根据目前的情况来看,京东商城登录规则是:第一次登录不用输入验证码,登录失败或者多次登录请求就会要求输入验证码。登录完成后,在退出程序时,建议最好是做个退出操作,否则很可能下次登录就要输入验证码了。
有两种方式可以判断登录京东商城是否需要验证码:
1、在登录页面中有<div id="o-authcode" class="item item-vcode item-fore4 hide ">,通过判断是否具备“hide”来判断,若有Hide表示不用验证码,若没有,表示需要验证码;
2、通过获取https://passport.jd.com/uc/showAuthCode?r=0.7007493122946471&version=2015返回的Json值({"verifycode":false}),若值为False则不需要验证码,否则需要验证码。
/// <summary> /// 是否要验证码 /// </summary> private bool CheckAuthcode() { //判断是否需要验证 返回Json({"verifycode":false}) //https://passport.jd.com/uc/showAuthCode?r=0.7007493122946471&version=2015 HttpItem item = new HttpItem(); HttpHelper helper = new HttpHelper(); HttpResult result = new HttpResult(); string r = new Random().NextDouble().ToString(); item.URL = string.Format("https://passport.jd.com/uc/showAuthCode?r={0}&version=2015",r); item.ContentType = "application/x-www-form-urlencoded; charset=utf-8"; item.Postdata = string.Format("loginName={0}",_jdLoginer.loginname); result = helper.GetHtml(item); if (result.Html.ToLower().Contains("false")) { return false; } else { return true; } }
另外也可以在登录结果中进行判断,若在登录结果中提示:
({"emptyAuthcode":"\u8bf7\u8f93\u5165\u9a8c\u8bc1\u7801"}) 表示“请输入验证码”。
杀京东 做最走心的京东价格监控软件 免费开源的价格监控软件 欢迎加入QQ群415014949一起讨论
0 0
- 京东价格监控软件开发技术探讨九:C#判断京东登录是否需要验证码
- 京东价格监控软件开发技术探讨三:使用C#模拟京东登录
- 京东价格监控软件开发技术探讨五:京东验证码的获取
- 京东价格监控软件开发技术探讨一:C#实现获取京东商品信息(价格、库存)
- 京东价格监控软件开发技术探讨六:京东商品价格详议
- 京东价格监控软件开发技术探讨七:如何获取京东商品评价信息
- 京东价格监控软件开发技术探讨八:如何获取京东商品分类数据
- 京东价格监控软件开发技术探讨二:通过HttpWebRequest获取指定网页数据
- 京东价格监控软件开发技术探讨四:京东Cookies的获取
- “杀京东”京东价格监控软件项目开发日志一
- 京东价格监控软件开源地址
- 模拟登录QQ判断是否需要验证码
- Python实现京东价格监控
- 【技术原创】探讨一下京东商城价格图片解析算法的优化,附演示程序下载
- 杀京东价格监控软件项目开发日志
- 监控软件的开发模式探讨
- Struts开发一个权限验证拦截器来判断用户是否登录
- 登录验证码C#
- 学习途中的风景 2016年 2月
- 书那么廉价,却饱含着作者无价的知识。
- RadioButton的使用
- 【Android归纳】intent小结
- 利用机器学习进行恶意代码分类
- 京东价格监控软件开发技术探讨九:C#判断京东登录是否需要验证码
- Windows 编程之WinMain
- 【转】mysql发展历程 各分支版本溯源
- php中的$_GET全局变量,通过URL传递参数
- android APK加固篇-2.动态加载dex及dex的方法的调用
- matlab环境中 将cell数据 写入到text文件
- hdu 1532(最大流)
- Web app root system property already set to different value 错误原因及解决
- 工作心态