工作需要爬取亞馬遜上面的訊息,但是亞馬遜反爬蟲太厲害,同一個IP位址會被封。
Python版本:3.6, IDE:Pycharm 2017.1
在網路上查了很多資料,requests函式庫的手冊也讀過,但是都是同一個方法,程式碼如下:
import requests
'''代理IP地址(高匿)'''
proxy = {'HTTPS': '117.85.105.170:808'}
'''head 信息'''
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'}
'''http://icanhazip.com会返回当前的IP地址'''
p = requests.get('http://icanhazip.com', headers=head, proxies=proxy)
print(p.text)
根據我看過的許多教學的理論,如果代理設定成功,最後顯示的IP應該是代理的IP位址,但是最終還是我真實的IP位址,這樣一來不就等於沒有設定代理麼?
阿神2017-06-12 09:26:11
proxies在你訪問http時用http的設置,訪問https時用https的設置
所以你的proxy需要同時包含http及https的配置,這樣才能生效
proxy = {
'http': 'http://117.85.105.170:808',
'https': 'https://117.85.105.170:808'
}