fake-useragent 能夠提供隨機的User-Agent,模擬瀏覽器使用的User-Agent。
環境:Win10系統能,Anaconda3 + PyCharm, Python3.6
一、安裝步驟:
1.以管理員身份運行【Anaconda Prompt】:
2.輸入命令:
pip install fake-useragent
結果如上圖所示,安裝成功,但是注意用 conda install fake-useragent 找不到這個包,會安裝失敗。
二、測試:
1.打開PyCharm編譯器,新建一個文件,輸入以下代碼:
# 僞裝User-Agent的測試
from fake_useragent import UserAgent
ua = UserAgent()
print(ua.ie)
print(ua.opera)
print(ua.chrome)
print(ua.google)
print(ua['google chrome'])
print(ua.firefox)
print(ua.ff)
print(ua.safari)
print(ua.random) #最好的, 通過真實世界的瀏覽器使用統計隨機
2.測試結果:第一次運行提示出了問題,再次運行就OK。
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
Opera/9.80 (Windows NT 6.1 x64; U; en) Presto/2.7.62 Version/11.00
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36
Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1464.0 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; rv:21.0) Gecko/20100101 Firefox/21.0
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; sv-se) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36
3.簡單使用:
from fake_useragent import UserAgent
import requests
ua = UserAgent()
headers = {'User-Agent': ua.random}
url = 'https://www.baidu.com/'
r = requests.get(url, headers=headers)
print(r.status_code)
print(r.encoding)
print(r.apparent_encoding)
print(r.request.headers)
4.結果:
200
ISO-8859-1
utf-8
{'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.62 Safari/537.36', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'}
注意:在使用fake_useragent包時可能造成不能夠使用的狀況,最好是收集好UseAgent的列表,從中隨機選擇一個來使用。
參考:
https://blog.csdn.net/zhangmoyan9527/article/details/82894295
https://blog.csdn.net/qq_35531549/article/details/88364196