问题描述: python配置代理后,charles无法抓到本地发出的请求包。 解决方案: 主要是我没弄懂charles抓https包的原理。 我在charles中配置http和https代理端口不同,但实际上https的请求通过https代理服务转发,最终会走到http代理服务。 demo代码如下:
import requests class TestProxy: def setup_class(self): # 错误配置 self.proxy = { "http": "http://127.0.0.1:8887", "https": "http://127.0.0.1:8889", } # 正确配置 self.proxy = { "http": "http://127.0.0.1:8887", "https": "http://127.0.0.1:8887", } def test_proxy(self): url = "https://blog.youkuaiyun.com" headers = {"test":"eline"} res = requests.get(url=url, headers=headers, proxies=self.proxy, verify=False) print(f"本次响应值为{res}")