
qq:800819103
在线客服,实时响应
qq群
在线客服,实时响应
客服电话
400-998-9776转3投票大家都不陌生吧,经常看到有人将投票链接甩到微信群上,发红包要大家投票,要不是因为投票有IP的限制,大家求投票的姿势也不用那么卑微。那么,有没有什么办法能够突破这个限制来刷票呢?方法总是要比限制多的,下面看看使用代理IP如何制作出刷票系统。
1、系统设计
系统主要实现的是突破IP限制进行刷票,其中,由IP采集模块负责从互联网上爬取代理IP,放入阻塞队列,该任务会定期执行。之后由投票模块从阻塞队列中获取IP,并进行设置,然后进行投票。系统流程图如下:
2、系统技术
系统使用HttpClient + JSoup + 多线程来完成刷票,HttpClient用于进行投票,JSoup用于解析页面,多线程技术用于分离任务,使得分工更加明确。使用到了生产者消费者模式,该模式直接使用BlockingQueue来实现。
3、系统介绍
系统主要分为三个模块:
①IP采集模块
②投票模块
③IP信息模块
其中,IP采集模块主要是从互联网爬取IP代理信息,并将该信息放入阻塞队列,这样就可以伪造IP,进行多次投票。
其中,投票模块从IP采集模块放入阻塞队列取出IP信息,并设置代理,找到投票入口地址,然后进行投票操作。
其中,IP信息模块主要是对爬取的IP信息进行了封装,方便其他模块进行操作。
3.1 IP采集模块
IP采集模块流程图如下
几点说明:
1、提取IP信息为提取单条IP信息,并判断历史IP表是否已经存在,若存在,表示之前已经加入过此IP信息,则直接丢弃,反之,则加入队列并加入历史IP表。
2、此任务会定期开启,如一个小时爬取一次代理IP。
3.2 投票模块
投票模块流程图如下:
几点说明:
1、根据IP采集模块放入队列的IP信息进行设置,然后进行投票。
3.3 IP信息模块
此模块主要对从网站爬取的IP信息进行了封装,方便其他模块进行操作。
4、系统代码框架
系统的整个代码框架如下:
其中,bean包的IpInfo封装了爬取的IP信息。
其中,entrance包的Vote为系统的入口。
其中,thread包的IPCollectTask为爬取代理IP任务,VoteThread为进行投票线程。
到这里,系统的基本框架就完成了,由于代码部分篇幅比较长,我们留住下一部分来分享,请继续关注。
一些购买了代理ip的小伙伴跟我反映,为什么在使用之前需要添加进白名单这么麻烦,直接使用多方便多快捷,先还得多做一步效率都变慢了,太不科学了。其实添加ip白名单是有很大用处的,
用户通常通过代理来突破限制,如局域网对上网用户的端口、目的网站、协议、游戏、即时通讯软件等的限制,网站对于IP的访问频率、访问次数的限制等
IP代理池支持数据大规模抓取,不然单靠单个IP是容易出问题的,大家都明白,短时间内访问一个网站几十次后肯定会被屏蔽的。每个网站对IP的解封策略也不一样,有的1小时候后又能重新访问
在上网的时候,很多用户发现了如果最近浏览的产品,搜索引擎就会自动推荐类似的产品,其实这就是我们的信息被追踪的结果。有很多方法可以隐藏我们的IP,代理IP就是不错的选择。
代理服务技术其实在互联网已经存在很长一段时间,只是前期少部分人才会使用到,所以没有什么知名度。但是随着网络的发展,现在不少人对互联网进行研究,也开始用到代理服务技术,像代
曾经我们以为ip资源是无尽的,但是ipv4资源已经用完了,ip地址并不是无限的,而是受到数量限制的。除了日常使用的ip,我们还会用到ip代理软件,一般是通过它来换ip完成需要的网络操作。