对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避免死锁方法实例分析
Jun 04 Python
Python素数检测实例分析
Jun 15 Python
python下调用pytesseract识别某网站验证码的实现方法
Jun 06 Python
pandas系列之DataFrame 行列数据筛选实例
Apr 12 Python
Python中反射和描述器总结
Sep 23 Python
pycharm运行和调试不显示结果的解决方法
Nov 30 Python
python mac下安装虚拟环境的图文教程
Apr 12 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
Jul 05 Python
Python logging设置和logger解析
Aug 28 Python
python内打印变量之%和f的实例
Feb 19 Python
Python文字截图识别OCR工具实例解析
Mar 05 Python
python库Tsmoothie模块数据平滑化异常点抓取
Jun 10 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
用PHP实现文件上传二法
2006/10/09 PHP
完美的2个php检测字符串是否是utf-8编码函数分享
2014/07/28 PHP
跟我学Laravel之视图 &amp; Response
2014/10/15 PHP
9个经典的PHP代码片段分享
2014/12/18 PHP
php轻量级的性能分析工具xhprof的安装使用
2015/08/12 PHP
PHP提取字符串中的手机号正则表达式怎么写
2017/07/17 PHP
javascript通过navigator.userAgent识别各种浏览器
2013/10/25 Javascript
javascript 获取元素样式必杀技
2014/05/04 Javascript
JQuery选择器、过滤器大整理
2015/05/26 Javascript
JavaScript高级程序设计(第三版)学习笔记1~5章
2016/03/11 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
Angular2入门--架构总览
2017/03/29 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
微信小程序实现横向滚动导航栏效果
2019/12/12 Javascript
[38:21]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS LGD-CDEC
2014/05/22 DOTA
[00:32]10月24、25日 辉夜杯外卡赛附加赛开赛!
2015/10/23 DOTA
Python中Collection的使用小技巧
2014/08/18 Python
python实现中文转换url编码的方法
2016/06/14 Python
Python实现的选择排序算法示例
2017/11/29 Python
Python中elasticsearch插入和更新数据的实现方法
2018/04/01 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
python实现图片文件批量重命名
2020/03/23 Python
让代码变得更易维护的7个Python库
2018/10/09 Python
python创造虚拟环境方法总结
2019/03/04 Python
Python基于OpenCV实现人脸检测并保存
2019/07/23 Python
关于Python核心框架tornado的异步协程的2种方法详解
2019/08/28 Python
python数据分析:关键字提取方式
2020/02/24 Python
Django 解决model 反向引用中的related_name问题
2020/05/19 Python
Python基于内置函数type创建新类型
2020/10/22 Python
HTML5如何使用SVG的方法示例
2019/01/11 HTML / CSS
Ever New美国:澳大利亚领先的女装时尚品牌
2019/11/28 全球购物
迪卡侬中国官网:Decathlon中国
2020/08/10 全球购物
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
校庆筹备方案
2014/03/30 职场文书
tensorflow学习笔记之tfrecord文件的生成与读取
2021/03/31 Python
多人盗宝《绿林侠盗》第三赛季4.5上线 跨平台实装
2022/04/03 其他游戏