requests調用代理
import requests proxy='123.58.10.36:8080' #本地代理 #proxy='username:password@123.58.10.36: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調用代理selenium加上代理,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')
調用 ProxyHandler 添加 代理
from urllib import request url = 'www.baidu.com' # 設置代理 handler = request.ProxyHandler({'http':'ip:port'}) opener = request.bulid_opener(handler) # 發送請求 req = request.Request(url=url) response = opener.open(req)
在 scrapy下載中間件添加代理middlewares.py 自定義一個代理類,重寫 process_request 方法
class MyDaiLi(object): """docstring for MyDaiLi""" # 重寫這個方法 def process_request(self, request, spider): request.meta['proxy'] = 'http://ip:port'
settings.py (第55行)打開下載中間件,并將自定義的 MyDaiLi添加進去
DOWNLOADER_MIDDLEWARES = { 'daili_loginproject.middlewares.MyDaiLi': 543, }
回答所涉及的環境:聯想天逸510S、Windows 10。
requests調用代理
Selenium調用代理
selenium加上代理,selenium主要是實現自動化登錄驗證等操作
調用 ProxyHandler 添加 代理
在 scrapy下載中間件添加代理
middlewares.py 自定義一個代理類,重寫 process_request 方法
settings.py (第55行)打開下載中間件,并將自定義的 MyDaiLi添加進去
回答所涉及的環境:聯想天逸510S、Windows 10。