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


Posted in Python onAugust 21, 2019

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

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

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

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

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

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

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

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

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

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 requests更换代理适用于IP频率限制的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
操作Windows注册表的简单的Python程序制作教程
Apr 07 Python
Python中实现参数类型检查的简单方法
Apr 21 Python
Python输出PowerPoint(ppt)文件中全部文字信息的方法
Apr 28 Python
Python基于matplotlib绘制栈式直方图的方法示例
Aug 09 Python
开源软件包和环境管理系统Anaconda的安装使用
Sep 04 Python
Python实现账号密码输错三次即锁定功能简单示例
Mar 29 Python
使用Python中的reduce()函数求积的实例
Jun 28 Python
Django REST framework 视图和路由详解
Jul 19 Python
python3 动态模块导入与全局变量使用实例
Dec 22 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
Jan 10 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
Feb 07 Python
Python使用BeautifulSoup4修改网页内容
May 20 Python
docker django无法访问redis容器的解决方法
Aug 21 #Python
django和vue实现数据交互的方法
Aug 21 #Python
python防止随意修改类属性的实现方法
Aug 21 #Python
python进阶之自定义可迭代的类
Aug 20 #Python
关于阿里云oss获取sts凭证 app直传 python的实例
Aug 20 #Python
django中使用POST方法获取POST数据
Aug 20 #Python
python实现猜拳小游戏
Apr 05 #Python
You might like
PHP 和 XML: 使用expat函数(三)
2006/10/09 PHP
初学CAKEPHP 基础教程
2009/11/02 PHP
php操作excel文件 基于phpexcel
2010/07/02 PHP
php中实现记住密码自动登录的代码
2011/03/02 PHP
关于JSON以及JSON在PHP中的应用技巧
2013/11/27 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
php用户注册信息验证正则表达式
2015/11/12 PHP
详解php与ethereum客户端交互
2018/04/28 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
js实现在文本框光标处添加字符的方法介绍
2012/11/24 Javascript
js清除input中type等于file的值域(示例代码)
2013/12/24 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
Node.js文件操作详解
2014/08/16 Javascript
通过location.replace禁止浏览器后退防止重复提交
2014/09/04 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
2016/04/05 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
Windows下快速搭建NodeJS本地服务器的步骤
2017/08/09 NodeJs
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
Mac下通过brew安装指定版本的nodejs教程
2018/05/17 NodeJs
详解Vue-cli中的静态资源管理(src/assets和static/的区别)
2018/06/19 Javascript
VUE-ElementUI 自定义Loading图操作
2020/11/11 Javascript
py2exe 编译ico图标的代码
2013/03/08 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
为什么从Python 3.6开始字典有序并效率更高
2019/07/15 Python
django drf框架自带的路由及最简化的视图
2019/09/10 Python
节日快乐! Python画一棵圣诞树送给你
2019/12/24 Python
详解Open Folder as PyCharm Project怎么添加的方法
2020/12/29 Python
用python制作个视频下载器
2021/02/01 Python
《美丽的彩虹》教学反思
2014/02/25 职场文书
需求分析说明书
2014/05/09 职场文书
2014教师教育实践活动对照检查材料思想汇报
2014/09/21 职场文书
《法国号》教学反思
2016/02/22 职场文书
pandas中DataFrame检测重复值的实现
2021/05/26 Python
修改MySQL的默认密码的四种小方法
2021/05/26 MySQL
windows server2016安装oracle 11g的图文教程
2022/07/15 Servers