以下代码列举了python 常用爬虫http请求包中代理设置方法
notice:请求httpbin.org 网站会返回当前请求的ip,用于验证代理是否生效
urllib代理设置:
from urllib.error import URLError
from urllib.request import ProxyHandler,build_opener
proxy='123.58.10.36:8080' #使用本地代理
#proxy='username:[email protected]:8080' #购买代理
proxy_handler=ProxyHandler({
'http':'http://'+proxy,
'https':'https://'+proxy
})
opener=build_opener(proxy_handler)
try:
response=opener.open('http://httpbin.org/get') #测试ip的网址
print(response.read().decode('utf-8'))
except URLError as e:
print(e.reason)
requests代理设置:
import requests
proxy='123.58.10.36:8080' #本地代理
#proxy='username:[email protected]:8080'
proxies={
'http':'http://'+proxy,
'https':'https://'+proxy
}
try:
response=requests.get('http://httpbin.org/get',proxies=proxies)
print(response.text)
except requests.exceptions.ConnectionError as e:
print('错误:',e.args)
Selenium代理设置:
from selenium import webdriver
proxy='123.58.10.36:8080'
chrome_options=webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server=http://'+proxy)
browser=webdriver.Chrome(chrome_options=chrome_options)
browser.get('http://httpbin.org/get')
国内的免费代理网站: