如何判断 Python 中的 GET 请求是使用 https 还是 http 代理?

How to tell if a GET request in Python is using an https or http proxy?

我目前在通过 Python3 中的 requests 库发出获取请求时使用代理。我为我的代理设置了 Tor 和 Privoxy,代码如下:

import requests
proxies = {
    "http": "http://127.0.0.1:8118",
    "https": "https://127.0.0.1:8118"
}
resp = requests.get("https://icanhazip.com", proxies=proxies)

我想知道是否有办法查看 resp 是否使用了 http 或 https 代理。有办法吗?

我认为最pythonic的方式是这样的:

import requests
from urllib.parse import urlparse

def get_scheme(url):
    return urlparse(url).scheme

url = 'https://www.whatever.com'
response = requests.get(url)

scheme = get_scheme(response.url)

或者,您可以这样做:

import requests

url = 'https://www.whatever.com'

response = requests.get(url)

scheme = response.url.split(':')[0]