自动刷票工具的实现机理简介
夫人有需求,查了点相关资料,mark。
ZZ自:http://spy.cnblogs.com/archive/2006/02/12/329297.aspx
1。更换IP
现在很多投票都对IP进行了限制,例如:每个IP每天只能投十票,或者每半小时投一票等等。因此,在辅助投票工具中要能自动更改IP。解决的办法无非是更换本机IP(直接挂在公网上有独立IP的机器)、重复拨号、使用代理等方法。
如果有IP资源(比如在电信机房。。嘿嘿),可以调用NETSH来更换IP,代码为
cmdStr = "netsh interface ip set address name=""本地连接"" source=static addr=" & Trim(inIP) & " mask=255.255.240.0 "
hwnd = WinExec(cmdStr, 0) '参数为0则隐藏窗体
If hwnd < 32 Then 'hWin<32则启动应用程序失败
MsgBox "error!"
Exit Sub
End If
txtShowIP.Text = inIP
在XP下更换IP速度较慢,建议将操作系统换成WIN2000,一般1至3秒即可更换完毕。
如果没有IP资源,就只好采取重新拨号或更换代理的办法来变换IP。由于电信局对拨号用户分配IP的规则,重新拨号也往往会得到重复IP,而更换代理则由于代理不稳定,效果也不好。不过我曾经试过ADSL,虽然也会出现重复IP,但其拨号上线的速度很快,建议没有IP资源的用户可以采取反复拨号、投票的方法来避开IP验证。
2。自动勾选投票选项。
一般投票会将所有候选人列出来,勾选后点投票。勾选会有一定的要求,例如最少不能少于五名,最多不能少于十名等等。在这种情况下,除了每次一定要勾选指定的客户以外,还要随机的勾选其他四名候选人,将票数分散,防止其他候选人对指定客户形成威胁。同时,为了方便客户操作,还应当允许客户指定投某些人的票(比如排在最后几名的候选人)。自动勾选有两种实现的方法,一是先用WEB控件将网页下载,然后通过DOCUMENT对象对CHECKBOX进行操作。这种方法比较简单、直观。另一种是使用截包工具(SNIFFER)截下投票时发送的包,通过分析找到勾选的参数,然后在程序里直接构造出包,通过INET控件递交到服务器。这种方法速度较快,并可通过返回的数据分析投票是否成功。使用这种方法时,要注意中文的URL编码问题。
3。COOKIES
如果你更换了IP,重新打开了IE,并按规定投出票,但是服务器仍然告诉你:你已经投过票,请不要重复投票。这时,你就应该考虑服务器可能是使用COOKIES来标识了你的机器。你需要在重新打开IE之前清空COOKIES。另外,VB的WEB控件和INET使用的是同一个COOKIE域,所以,为了能够再次投票,最好在清空COOKIES之后重启程序,方法是在MAINFORM的UNLOAD事件中加一个Shell App.EXEName。不过一定要注意呀!一定一定要加一个东东对这一行语句进行开关,不然的话。。。。。。。
4。验证码的识别
为了防止使用投票工具、MOUSE点击器等进行自动投票,现在网站都采用了验证码机制。关于验证码的识别,我在另一篇里已经讲了。这里只讲一下取验证码图片的问题。在做测试时,从网上找到一个资料,是说可以通过调用“COPY”这个右键菜单复制到剪贴板中,然后再从剪贴板拷贝到PIC控件中。后来正式做的时候却忘了怎么做的。上网查到半夜二点多也没找到那个资料。后来没办法,我采取了另一种方法来实现:使用DOCUMENT对象来调用滚屏定位到验证码的位置,然后使用BitBlt来直接取到图片。
自动刷票工具的实现机理简介相关推荐
- AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介、安装、使用方法之详细攻略
AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介.安装.使用方法之详细攻略 目录 Ludwig的简介 Ludwig(无需编写代码/易于使用的界面和可视化自 ...
- python代码规范 自动优化工具Black
自动优化工具Black 在众多代码格式化工具中,Black算是比较新的一个,它***的特点是可配置项比较少,个人认为这对于新手来说是件好事,因为我们不必过多考虑如何设置Black,让 Black 自己 ...
- 国产自主可控的形式化验证代码自动生成工具ModelCoder可替代Matlab/Sumlink
在安全关键领域,基于模型的软件工程或者软件开发已逐渐进入了我国的装备研制过程中.使用SimuLink或者SCADE等嵌入式软件建模工具对算法或者控制逻辑进行可视化建模,然后生成高可靠的二进制代码逐渐成 ...
- 干掉 BeanUtils!试试这款 Bean 自动映射工具,真心强大!
平时做项目的时候,经常需要做PO.VO.DTO之间的转换.简单的对象转换,使用BeanUtils基本上是够了,但是复杂的转换,如果使用它的话又得写一堆Getter.Setter方法了.今天给大家推荐一 ...
- 【Microsoft Azure 的1024种玩法】七十四.五分钟在Azure Virtual Machines中快速部署一套软件项目管理及自动构建工具
[简介] Apache Maven由 Apache 软件基金会所提供的一个软件项目管理及自动构建工具,Maven 为开发者提供了一套完整的构建生命周期框架.开发团队几乎不用花多少时间就能够自动完成工程 ...
- 试客联盟试用自动申请工具v6.7官方版
名称:试客联盟试用自动申请工具v6.7官方版 版本:6.7 大小:11.9MB 软件语言:中文简体 软件授权:免费版 应用平台:WinAll 软件介绍以及简介: 试客联盟试用自动申请工具是一款由一马软 ...
- 12306自动刷票下单-查票下单
12306自动刷票下单-登录 前言 上篇写了12306登录,隔了快一个月了,才准备动手写下单篇,真的要非常感谢博客园的 Asimple朋友,如果不是看到你的留言,我几乎都忘了要写下篇了,这一点在简书上 ...
- 火车票订票插件,可自动登陆,自动刷票,自动提交
一年一度的抢票大战已经上演,因为现在铁道部改成分节点的放票策略, 打算在网上购票的朋友们要掌握好放票的时间,避免错过放票时间. 前几天在往上看到的别人介绍的一个Chrome的插件 ,可以自动登录火车 ...
- js 刷新页面但是不闪烁_前端开发还在手动刷新页面?手把手教你搭建一个自动刷新工具...
作为一名前端,开发web页面是我们的本职工作.在完成一个页面开发的过程中,保存代码然后手动刷新页面查看效果,这样的动作需要重复无数次,虽然一次这样的动作可能只要花费几秒钟的时间,但是次数多了也挺浪费时 ...
- iOS应用模块化的思考及落地方案(二)模块化自动构建工具的使用
1.0 iOS模块化中的问题 前文已经介绍了模块化的流程及一些常见的问题,我们在这里再次总结一下. 在工作中,当我们开始一个新项目的时候,最先考虑的就是模块化工作. 模块化工作的想法是很美好的,可是执 ...
最新文章
- 静态链表实现(A-B)+(B-A)【代码】
- 人群距离监测 DeepSOCIAL 最全汉化论文+源码导读
- 电脑上的c语言程序打不开,电脑软件打不开常用处理方法
- Jzoj4778 数列编辑器
- hashmap储存有向图_以邻接表的形式创建带权值的有向图即有向网
- 【Selenium-WebDriver自学】出现的问题和解决方案(十七)
- 2017-10-19 NOIP模拟赛
- jQuery – 6.选择器
- Qt_QTableWidget用法 添加、删除、添加控件、获取控件在表格中位置
- 百度地图根据位置获取对应的位置中文
- html设置div大小位置不变,div大小 div固定大小设置
- Cookie测试之详解
- Android OpenGL ES纹理总结、纹理坐标系说明、使用代码示例
- C++: STL: atomic
- 虚拟磁盘管理 无法启动服务器,运行虚拟磁盘管理器提示"RPC服务器不可用"分析与解决方案...
- 线程池的好处,详解,单例(绝对好记)
- 计算机网络运输层知识点,计算机网络复习——Ch6传输层
- 一个有用的Win32消息处理宏HANDLE_MSG
- MCU 微控制器,在实际项目中如何选型(以 STM32为例)
- 基于Kappa-mu/M分布的联合多用户分集与并行中继继选择RF/FSO系统性能研究