購買的固定代理IP一般都需要賬號密碼, 在網上找了幾個使用方法,但是都報錯,所以,就想了這個笨辦法,如有好辦法希望大家指點。
import requests from requests.auth import HTTPBasicAuth proxy = { 'http': 'http://ip:port', 'https': 'https://ip:port8' } head = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ' 'Chrome/50.0.2661.102 Safari/537.36', 'Connection': 'keep-alive', 'Proxy-Authorization': '...' # 在瀏覽器中獲取此值 } p = requests.get('http://icanhazip.com', headers=head) print(p.content.decode('utf-8'))
# ########################## 下面是獲取Proxy-Authorization的方法############################################
首先,就是獲取在headers 中的 Proxy-Authorization
用的是Chrome瀏覽器, 設置代理ip
然后點擊 確定
打開一個新的網頁, 隨意登錄一個網站
登錄后, 訪問 http://127.0.0.1
在scrapy的中間件中添加:
request.meta['proxy'] = "http://ip:port" # 添加Proxy-Authorization對應得值,添加在請求的headers中 request.headers['Proxy-Authorization'] = 'Basic ...........'
這樣就將固定ip設置為代理了~