• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python requests更换代理适用于IP频率限制的方法

python 搞代码 4年前 (2022-01-08) 30次浏览 已收录 0个评论

今天小编就为大家分享一篇python requests更换代理适用于IP频率限制的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

有些网址具有IP限制,比如同一个IP一天只能点赞一次。

解决方法就是更换代理IP。

从哪里获得成千上万的IP呢? 百度“http代理” 可获得一大堆网站。

比如某代理网站,1天6元,可以无限提取。

把提取的IP,保存到txt文件中。

写一个方法,读取文件,存入数组中

 def getProxysFromFile(): with open("proxy.txt", "r") as f: l = f.readlines() return l

比如执行某任务,传入单个代理IP+PORT

 def run(proxy): try: print("proxy:{}".format(proxy)) s=requests.Session() proxies={ "http": "http://{}".format(proxy.strip()), "https":"https://{}".format(proxy.strip()) } header={ "Host":"www.xxx.com", "Referer":"http://www.xxx.com<mark style="color:transparent">来源gaodaimacom搞#代%码网</mark>/xxx.html?199", "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36" } ret=s.get(url="http://www.xxx.com/data/dz?uid=199&ztype=1",headers=header,proxies=proxies,timeout=4) rc=ret.content.decode("utf-8") print(rc) if "成功" in rc: global count count+=1 print(count) except: pass

接下来就是调度,简单写了个调度,比如每隔5秒钟,启动100个线程去执行。(这里为了简单,在上面的run中设置了超时时间为4秒,所以能保证不会导致启动的线程太多未完成卡死)

 if __name__ == '__main__': count=1 l=getProxysFromFile() while True: for i in range(100): try: t=threading.Thread(target=run,args=(l.pop(),)) t.start() except: pass time.sleep(5)

效果如下,速度还是很快的。

以上就是python requests更换代理适用于IP频率限制的方法的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python requests更换代理适用于IP频率限制的方法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址