77百科网
当前位置: 首页 生活百科

python制作简单投票系统(Python自动化刷投票脚本开发)

时间:2023-07-27 作者: 小编 阅读量: 1 栏目名: 生活百科

前言现在部分比赛为了推广赞助商或者比赛本身,需要参赛队伍进行网上拉票,甚至票数还会占一定比例的成绩。因此,刷票也就应运而生了。当然不会啦,我们得找一找这个提交过程有没有什么漏洞。分析源代码,找了找,果真还让我找到了!看出什么没有,它这里有两个致命的漏洞:1.它允许提交3支或3支以上的队伍,并且没有限制最大数量,只限制了最少数量。

前言

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

原理

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

主要内容
  • 分析网站

  • 表单提交

  • 构造代理IP池

1. 分析网站

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

1.1 收集信息

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

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

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

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

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

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

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

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:\\code\\Python\\new\\Brush ticket\\IP.txt",'w') as f:for i in all_url:f.write(i)f.write('\n')return all_url

主函数

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

运行日志代码

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

    推荐阅读
  • 哈弗神兽suv全系怀挡(兼具越野性能的紧凑型SUV推荐)

    另一方面,哈弗哈弗大狗拥有37处储物空间,比普通SUV多达3倍,拿取物体触手可及,因而大受好评。除了人性化的车内空间设计,哈弗大狗还以多功能为核心,全面布局未来座舱,实现全感官体验人机互联。而哈弗哈弗大狗的后排地台也没有因为凸起的造型而受到限制,并且还配备了出风口。在乘坐空间方面,由于哈弗哈弗大狗采用的四驱系统,所以它的乘坐高度会比普通SUV要更高一些。

  • 琴叶榕可以往叶子上喷水吗(琴叶榕能不能往叶子上喷水)

    琴叶榕可以往叶子上喷水吗?以下内容大家不妨参考一二希望能帮到您!琴叶榕可以往叶子上喷水吗琴叶榕可以往叶子上喷水,主要是春夏季喷洒水,利于生长,秋冬季则停止喷水,避免叶片被冻伤;养殖方法如下:浇水:它喜湿润环境,发现土壤干需及时浇水,保湿处理。温度:平时提供15-28℃的环境,冬季必须采取保暖措施,避免受冻。光照:每天接受4个小时左右的散光即可,不可暴晒。

  • 行程卡会变颜色吗(行程卡会不会变颜色)

    行程卡的查询结果页会使用绿色、黄色、橙色、红色四种颜色进行标记,规则会按实际情况进行实时调整。2020年11月10日0时起,行程卡将对包含中高风险区域的地市名称标记为红色,仅作为出行提示,不关联健康状况。具体管控政策请遵循各地联防联控机制。也就是说,如果途经中高风险地区,行程卡并不会变色。

  • 卡路里歌词(卡路里歌简介)

    下面内容希望能帮助到你,我们来一起看看吧!

  • 香草荚怎么用(用香草荚的方法)

    接下来我们就一起去研究一下吧!用手指按住香草荚的一端,用小刀的刀背刮一刮香草荚的表面,让香草荚的质地变软一些,以便将香草籽刮出。用小刀的刀尖将香草荚一剖两半,使香草籽可以露粗来。用小刀的刀尖抵住香草荚的内侧,将香草籽刮出,就可以了。

  • 安卓手机倒问号怎么打(安卓怎么打出倒问号)

    Android是由Google公司和开放手机联盟领导并开发的一种基于Linux的自由且开放源代码的操作系统,主要使用于移动设备。其最初由AndyRubin开发,后被Google于2005年8月收购。之后Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟,共同研发改良Android系统,完成开发后,Google以Apache开源许可证的授权方式,发布了Android的源代码。

  • 普洱茶功效(大家可以了解一下)

    同时,普洱茶在存放过程中有微生物参与,使普洱茶的美容功效得到升华。普洱茶治疗便秘效果显著:普洱茶最大的一个功效就是对肠胃好,生津解腻,便秘人群多喝普洱茶,能够有很大的改善。

  • 秋雨是什么电视剧(秋雨电视剧简介)

    下面更多详细答案一起来看看吧!秋雨是什么电视剧《秋雨》是由中国电影集团公司出品,孙铁执导,靳东、前田知惠及毕彦君共同主演的爱情片。该片讲述了日本姑娘桥本栀子来何冀初家学习京剧,却由此引出两个家庭纠葛的故事。影片已于2005年7月21日在中国内地上映。

  • 天津各区行政服务中心汇总(天津各区政务服务中心)

    天津各区行政服务中心:天津人才引进落户地点:(一)在本人、配偶、父母、子女名下房产落户:1.房屋产权证书中能够体现房屋性质及所有权信息页;2.房主居民身份证、房主同意落户声明,以及能够证实本人与房主的亲属关系证明材料,如《结婚证》、《出生医学证明》等;3.如住房系本人与配偶、父母、子女之间共有的,还需上传房屋共有权证书。(二)在单位集体户落户:上传单位集体户首页复印件。无需上传相关落户材料。

  • 经期吃什么菜菜谱大全(素菜这么做好看)

    感谢您的阅读,欢迎订阅我的头条号和公众号,欢迎您给我意见,与我多多交流。