欢迎光临
我们一直在努力

Python自动化刷投票脚本开发,微信投票再也不需要发红包了-亿软阁软件圈


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

前言

现在部分比赛为了推广赞助商或者比赛本身,需要参赛队伍进行网上拉票,甚至票数还会占一定比例的成绩。因此,刷票也就应运而生了。此次我们团队参加一个比赛,就需要网上投票决出前几名,作为一位技术人员,当然是得“解决”技术能解决的问题嘛,所以就写了个刷投票插件来刷一刷。

原理

刷票的原理很简单,就是相当于模拟人登录网站去投票,只是把这个过程程序化,让程序代替人到网站去投票。具体一点说把,首先是客户端(我们)发出请求(Request)给服务端(投票网站),跟他们说,我们需要看他们网站的信息,然后服务端就会回复(Respose)我们,我们再把填好的表单发给他们(Request),他们收到后就会回复我们(Respose)。


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

主要内容

  • 分析网站

  • 表单提交

  • 构造代理IP

1. 分析网站

由于每个网站需要提交的信息都不一样,那么首先我们需要对目标网站进行相对应的分析,找出他们的表单接口(也就是URL或者叫网址)以及我们需要提交的信息。

1.1 收集信息

使用F12,打开审核元素,点击Network,真实地进行一次表单提交

框住的两个内容就是我们需要知道的一部分表单信息

– Request URL:请求网址,我们提交的信息就是传到这个url里面去

– Request method:请求方法,我们提交的方法


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

以上就是需要获得的基本信息,根据这些信息我们就可以编写刷票插件了,但作为一个对自身有高标准严要求的程序员来说,仅仅这样就足够吗?当然不会啦,我们得找一找这个提交过程有没有什么漏洞。

怎么找?分析源代码,找了找,果真还让我找到了!


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

看出什么没有,它这里有两个致命的漏洞:

1. 它允许提交3支或3支以上的队伍,并且没有限制最大数量,只限制了最少数量。

2. 它没有进行相同数据的筛选。

表单提交

构造表单信息

# 请求头信息
headers = {
\\’Accept\\’: \\’*/*\\’,
\\’Accept-Encoding\\’: \\’gzip\\’,
\\’Accept-Language\\’: \\’zh-CN\\’,
\\’Connection\\’: \\’keep-alive\\’,
\\’Content-Length\\’: \\’16\\’,
\\’Content-Type\\’: \\’application/x-www-form-urlencoded\\’,
\\’Host\\’: \\’www.dingnf.com\\’,
\\’Origin\\’: \\’http://www.dingnf.com\\’,
\\’Referer\\’: \\’http://www.dingnf.com/active/wxws_s\\’,
\\’User-Agent\\’: \\’Mozilla/4.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.3029.110 Safari/537.36\\’,
\\’X-Requested-With\\’: \\’XMLHttpRequest\\’
}

# post表单网址
url = \\”http://www.dingnf.com/active/wxws_t\\”
params = {\\’ids\\’: [\\’22\\’, \\’22\\’, \\’22\\’]}
r = requests.post(url=url, data=params, headers=headers, proxies=proxies)

构造代理IP池

构造IP代理容器

def WriteIPadress:
all_url = # 存储IP地址的容器
# 代理IP的网址
url = \\”http://api.xicidaili.com/free2016.txt\\”
r = requests.get(url=url)
all_url = re.findall(\\”d+.d+.d+.d+:d+\\”,r.text)
with open(\\”D:codePythonnewBrush ticketIP.txt\\”,\\’w\\’) as f:
for i in all_url:
f.write(i)
f.write(\\’n\\’)
return all_url

主函数


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

由于某些IP地址是存在问题的,所以需要设置异常处理,以便让程序能够正常运行,而API的数据每15分钟更新一次,我们每跑完一遍列表的时间也差不多,因此也就不做其他处理了。

运行日志


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

代码


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。


Python自动化刷投票脚本开发,微信投票再也不需要发红包了

<

打赏
这些信息可能会帮助到你: 加盟代理 | 软件问题答疑 | 网站装修推广 | 下单商城

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Python自动化刷投票脚本开发,微信投票再也不需要发红包了-亿软阁软件圈》
文章链接:https://dk.tkcdk.cn/14969.html
免责声明:本站所有资源和软件均来自于互联网渠道,只整合营销类软件-简单趣味娱乐软件其他危害社会软件客户绕行-免开尊口共同打造健康营销-绿色的微商环境
请遵循相关法律法规合理使用,本站一切资源不代表本站立场如有侵权不妥之处请第一时间联系我们删除,敬请谅解!
投诉侵权邮箱:520lab@2018lab.club 或联系QQ:321679717
分享到: 更多 (0)

亿软阁微营销 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏