python requests代理设置,fiddler抓包

一、请求方法里面的:proxies 命名参数

1.fiddle 抓HTTPS 设置、


image.png
  • 打开百度 随便输入点东西 搜索一下
    image.png
  1. 浏览器开启代理
image.png
  1. 脚本编写
    可以通过任意请求方法的proxies 命名参数来指定代理方式。其中http协议和https协议相互独立,设置方式为
    proxies = {
    "http": "http://127.0.0.1:8888",
    "https": "http://127.0.0.1:8888",
    }
import requests

url = 'http://www.baidu.com'


proxies = {
    "http": "http://127.0.0.1:8888",
    "https": "http://127.0.0.1:8888",
}
res = requests.get(url=url, proxies=proxies)
print(res.text.encode("utf-8"))
image.png

二、设置 HTTP_PROXY 和 HTTPS_PROXY环境变量

除了通过指定proxies 命名参数外,requests还提供了使用环境变量的方式来添加代理。requests提供HTTP_PROXY 和 HTTPS_PROXY环境变量,其中HTTP_PROXY为http协议设置代理,HTTPS_PROXY用于设置https协议的代理方式 。和命名参数相比,环境变量有以下优点:

  • 作用范围广,可作用于所有的请求
  • 可插拔,设置环境变量使用代理,不设置则不使用代理。
  • 若代理主机变动,代码无需修改,更优雅。
  • 还是和上篇设置fiddler代理一样,演示下采用环境变量的方式设置代理。

设置环境变量(设置环境变量后,重启电脑才会生效)

image.png

设置完成之后,写requests请求的时候就不用传参数proxies了。浏览器代理也不用手动去设置了,当你开启fiddler需要抓包的时候,fiddler回去开启代理,完成抓包。


import requests

url = 'http://www.baidu.com'

res = requests.get(url=url)
print(res.text.encode("utf-8"))

将上面代码再发送一次,浏览器也不要去勾选代理,尝试一下抓包是否能成功。

image.png

你可能感兴趣的:(python requests代理设置,fiddler抓包)