【干货】刷票插件刷一刷,让程序代替人到网站去投票

2021-04-28   网络转载
联系方式

突然发现问题来了,只能提交一次!为什么呢?

3.构造代理IP池

大多数投票站点将记录投票的IP地址,以避免对同一IP进行多次投票。我应该怎么办?我们可以模仿真实的投票,但不能更改IP地址吗?可以更改IP地址,但是比较麻烦。我们有一个更简单的方法:使用代理服务器来爬网某个网站的内容,而另一方的网站不是我们的真实IP地址,而是代理服务器。在IP地址中,代理服务器设置的使用非常简单。

3. 1找到了代理IP

以下是的推荐免费代理IP,,值得您使用

使用API​​可以快速获取我们需要的IP地址。当然,我们也可以作为爬网程序来爬网其网站上的URL。我不会在这里讨论。

3. 2构造一个IP代理容器

由于从API获得的数据具有更多的换行符和回车符,因此不利于直接提取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

4.主要功能

count = 0 # 计数器
while count < 4000:
    all_url = WriteIPadress()
    for i in all_url:
        proxies = {"http": i}
        try:
            r = requests.post(url=url, data=params, headers=headers, proxies=proxies)
            if(r.json()['flag'] == True):
                count += 1
                print("成功投票%d次!" % (count))
            print(r.json())
        except Exception as reason:
            print("错误原因是:",reason)

由于某些IP地址存在问题,因此有必要设置异常处理,以便程序可以正常运行,并且API数据每15分钟更新一次,而我们遍历该列表的时间大致相同,因此将不会进行其他处理。

运行日志

源代码

完整的源代码

个人博客,最新更新的文章都发布在这里,欢迎关注:

支付宝转账赞助

支付宝扫一扫赞助

微信转账赞助

微信扫一扫赞助

    A+
当前页面:http://www.v8tp.cn/wltp/4218.html