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

 更新时间:2019年08月21日 09:18:09   作者:一只小coder  
今天小编就为大家分享一篇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/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频率限制的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python对日志进行处理的实例代码

    python对日志进行处理的实例代码

    本篇文章给大家分享了关于python处理日志的方法以及相关实例代码,有兴趣的朋友们学习下。
    2018-10-10
  • 使用python把Excel中的数据在页面中可视化

    使用python把Excel中的数据在页面中可视化

    最近学习数据分析,感觉Python做数据分析真的好用,下面这篇文章主要给大家介绍了关于如何使用python把Excel中的数据在页面中可视化的相关资料,需要的朋友可以参考下
    2022-03-03
  • python中的单向链表实现

    python中的单向链表实现

    大家好,本篇文章主要讲的是python中的单向链表实现,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • 关于使用python对mongo多线程更新数据

    关于使用python对mongo多线程更新数据

    这篇文章主要介绍了关于使用python对mongo多线程更新数据,文中提供了详细的代码说明,实际使用时,需要根据具体情况进行调整和优化,需要的朋友可以参考下
    2023-04-04
  • 浅谈python 调用open()打开文件时路径出错的原因

    浅谈python 调用open()打开文件时路径出错的原因

    这篇文章主要介绍了浅谈python 调用open()打开文件时路径出错的原因,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python退火算法在高次方程的应用

    Python退火算法在高次方程的应用

    退火算法就是钢铁在淬炼过程中失温而成稳定态时的过程,热力学上温度(内能)越高原子态越不稳定。这篇文章主要介绍了Python退火算法在高次方程的应用,需要的朋友可以参考下
    2018-07-07
  • python中opencv支持向量机的实现

    python中opencv支持向量机的实现

    本文主要介绍了python中opencv支持向量机的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • python同义词替换的实现(jieba分词)

    python同义词替换的实现(jieba分词)

    这篇文章主要介绍了python同义词替换的实现(jieba分词),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • Python __setattr__、 __getattr__、 __delattr__、__call__用法示例

    Python __setattr__、 __getattr__、 __delattr__、__call__用法示例

    这篇文章主要介绍了Python __setattr__、 __getattr__、 __delattr__、__call__用法示例,本文分别对这几个魔法方法做了讲解,需要的朋友可以参考下
    2015-03-03
  • 如何使用五行Python代码轻松实现批量抠图

    如何使用五行Python代码轻松实现批量抠图

    简单来说,抠图就是将照片的主体人或物品从图片中抠出来,以便贴到别处使用,下面这篇文章主要给大家介绍了关于如何使用五行Python代码轻松实现批量抠图的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04

最新评论