对python使用http、https代理的实例讲解


Posted in Python onMay 07, 2018

在国内利用Python从Internet上爬取数据时,有些网站或API接口被限速或屏蔽,这时使用代理可以加速爬取过程,减少请求失败,Python程序使用代理的方法主要有以下几种:

(1)如果是在代码中使用一些网络库或爬虫框架进行数据爬取,一般这种框架都会支持设置代理,例如:

<span style="font-size:14px;">import urllib.request as urlreq 
# 设置https代理 
ph = urlreq.ProxyHandler({'https': 'https://127.0.0.1:1080'}) 
oper = urlreq.build_opener(ph) 
# 将代理安装到全局环境,这样所有请求都会自动使用代理 
urlreq.install_opener(oper) 
res = oper.open("https://www.google.com") 
print(res.read())</span>
<span style="font-size:14px;">import requests as req 
print(req.get("https://www.google.com", proxies={'https': 'https://127.0.0.1:1080'}).content)</span>

(2)如果使用的库没有提供设置代理的接口,但是底层使用了urllib、requests等库,可以尝试设置HTTP_PROXY 和HTTPS_PROXY环境变量,常用的网络库会自动识别这些环境变量,使用变量设置的代理发起请求,设置如下:

import os 
os.environ['http_proxy'] = 'http://127.0.0.1:1080' 
os.environ['https_proxy'] = 'https://127.0.0.1:1080'

(3)如果上述两种方法都没有用,那么还可以使用一些可以监听、拦截和修改网络包的工具和库如(Fiddler、mitmproxy)来拦截http请求包并修改地址,达到使用代理的效果。

以上这篇对python使用http、https代理的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现数通设备端口使用情况监控实例
Jul 15 Python
Python random模块用法解析及简单示例
Dec 18 Python
基于Python中单例模式的几种实现方式及优化详解
Jan 09 Python
Python数据持久化shelve模块用法分析
Jun 29 Python
mac下如何将python2.7改为python3
Jul 13 Python
python事件驱动event实现详解
Nov 21 Python
Python基础教程之if判断,while循环,循环嵌套
Apr 25 Python
Python安装Flask环境及简单应用示例
May 03 Python
python 一维二维插值实例
Apr 22 Python
Python数据可视化实现多种图例代码详解
Jul 14 Python
python基础之错误和异常处理
Oct 24 Python
ubuntu安装jupyter并设置远程访问的实现
Mar 31 Python
python3 requests中使用ip代理池随机生成ip的实例
May 07 #Python
python使用代理ip访问网站的实例
May 07 #Python
一些Centos Python 生产环境的部署命令(推荐)
May 07 #Python
Python实现爬虫设置代理IP和伪装成浏览器的方法分享
May 07 #Python
Pyspider中给爬虫伪造随机请求头的实例
May 07 #Python
python通过伪装头部数据抵抗反爬虫的实例
May 07 #Python
Django Web开发中django-debug-toolbar的配置以及使用
May 06 #Python
You might like
discuz7 phpMysql操作类
2009/06/21 PHP
PHP Session变量不能传送到下一页的解决方法
2009/11/27 PHP
php懒人函数 自动添加数据
2011/06/28 PHP
PHP+MySQL修改记录的方法
2015/01/21 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
PHP crypt()函数的用法讲解
2019/02/15 PHP
use jscript Create a SQL Server database
2007/06/16 Javascript
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
2009/11/12 Javascript
javascript:history.go()和History.back()的区别及应用
2012/11/25 Javascript
读取input:file的路径并显示本地图片的方法
2013/09/23 Javascript
js数组循环遍历数组内所有元素的方法
2014/01/18 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
JavaScript判断按钮被点击的方法
2015/12/13 Javascript
完美解决IE9浏览器出现的对象未定义问题
2016/09/29 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
JS实现移动端按首字母检索城市列表附源码下载
2017/07/05 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
js图片查看器插件用法示例
2019/06/22 Javascript
详解Vue数据驱动原理
2020/11/17 Javascript
Python判断文件和文件夹是否存在的方法
2015/05/21 Python
python简单实现基于SSL的IRC bot实例
2015/06/15 Python
python读取目录下最新的文件夹方法
2018/12/24 Python
计算机二级python学习教程(1) 教大家如何学习python
2019/05/16 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
Python企业编码生成系统之系统主要函数设计详解
2019/07/26 Python
python入门:argparse浅析 nargs='+'作用
2020/07/12 Python
pycharm 实现复制一行的快捷键
2021/01/15 Python
美国内衣品牌:Leonisa
2016/08/14 全球购物
卡塔尔航空官方网站:Qatar Airways
2017/02/08 全球购物
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
公司会议策划方案
2014/05/17 职场文书
2014最新党员违纪检讨书
2014/10/12 职场文书
2015年师德表现自我评价
2015/03/05 职场文书
共青团员自我评价
2015/03/10 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
Docker官方工具docker-registry案例演示
2022/04/13 Servers