Python request设置HTTPS代理代码解析

yipeiwu_com7年前Python基础

之前版本的代理中,可以使用fiddler进行HTTP包的代理,但是代理HTTPS包时,执行错误

  self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749)

urllib或requests在打开https站点是会验证证书,简单的处理方式就是把发送https请求时把验证ssl证书关掉,即设置verify为False

具体代码设置如:

requests.post(host, data=requestData, headers=headerData,proxies=proxies,verify=False)

取消SSL验证又带来一个新问题

C:\Users\lluozh\AppData\Local\Programs\Python\Python36\lib\site-packages\urllib3\connectionpool.py:852: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)

虽然不是错误,但是在捕捉异常时,默认会出问题,为了不影响原有流程,应该去掉这些警告信息

from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

或者直接取消所有urllib3的警告

requests.packages.urllib3.disable_warnings()

总结

以上就是本文关于Python request设置HTTPS代理代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Python调用微信公众平台接口操作示例

本文实例讲述了Python调用微信公众平台接口操作。分享给大家供大家参考,具体如下: 这里使用的是Django,其他类似 # coding=utf-8 from django.htt...

python中virtualenvwrapper安装与使用

virtualenv与virtualenvwrapper 当涉及到python项目开发时为了不污染全局环境,通常都会使用环境隔离管理工具virtualenv与virtualenvwra...

Python、PyCharm安装及使用方法(Mac版)详解

Python、PyCharm安装及使用方法(Mac版)详解

上周跟朋友喝咖啡时聊起我想学Python,她恰好也有这个打算,顺便推荐了一本书《编程小白的第1本Python入门书》,我推送到Kindle后,随手翻看了下,用语平实,简洁易懂。 之前在R...

Python实现的科学计算器功能示例

本文实例讲述了Python实现的科学计算器功能。分享给大家供大家参考,具体如下: import wx import re import math # begin wxGlade: e...

Python中多线程的创建及基本调用方法

1. 多线程的作用 简而言之,多线程是并行处理相互独立的子任务,从而大幅度提高整个任务的效率。 2. Python中的多线程相关模块和方法 Python中提供几个用于多线程编程的模块,包...