当前位置:首页 >> 脚本专栏

Python requests设置代理的方法步骤

指导文档:
http://docs.python-requests.org/en/master/user/advanced/ 的Proxies
http://docs.python-requests.org/en/latest/user/advanced/ 的SSL Cert Verification

requests设置代理

import requests
proxies = {'http': 'http://localhost:8888', 'https': 'http://localhost:8888'}
url = 'http://www.baidu.com'
requests.post(url, proxies=proxies, verify=False) #verify是否验证服务器的SSL证书

执行结果:

Python requests设置代理的方法步骤

基于 selenium的代理设置:

from selenium import webdriver

proxy='124.243.226.18:8888'

option=webdriver.ChromeOptions()

option.add_argument('--proxy-server=http://'+proxy)

driver = webdriver.Chrome(options=option)

driver.get('http://httpbin.org/get')

python3.8 request proxy(代理)失效解决方案

在使用python3.8版本的时候,我们使用request库的时候,可能会遇到

urllib3.exceptions.ProxySchemeUnknown: Not supported proxy scheme None

下面这样的错误,这是游戏底层修改了url解析模式,导致proxy代理解析失败导致的。

解决方案是:

如果不使用代理,那么就可以改成

proxies = {

"http": "",

"https": "",

}

request.get(url,proxies=proxies)

如果使用代理的话,就可以修改成:

proxies = {

"http":" http://127.0.0.1:1080",

"https":"https://127.0.0.1:1080",

}

需要注意的是,一定要写成http://+ip+port这种形式,不能去掉前面的http://,否则就会产生错误。