Python request设置HTTPS代理代码解析

yipeiwu_com6年前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 Sqlite3以字典形式返回查询结果的实现方法

sqlite3本身并没有像pymysql一样原生提供字典形式的游标。 cursor = conn.cursor(pymysql.cursors.DictCursor) 但官方文...

Python选课系统开发程序

Python选课系统开发程序

本文程序针对Python选课系统进行开发,供大家参考,具体内容如下 角色:学校、学员、课程、讲师 要求: 1. 创建北京、上海 2 所学校 2. 创建linux , python , g...

简单介绍Python中的decode()方法的使用

 decode()方法使用注册编码的编解码器的字符串进行解码。它默认为默认的字符串编码。 语法 以下是decode()方法的语法: str.decode(encoding=...

对python中if语句的真假判断实例详解

说明 在python中,if作为条件语句,当if后面的条件参数为真时,则执行后面的语句块,反之跳过,为了深入理解if语句,我们需要知道if语句的真假判断方式。 示例 在python交互器...

用scikit-learn和pandas学习线性回归的方法

用scikit-learn和pandas学习线性回归的方法

对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了。 1. 获取数据,定义问题 没有数据,当然没...