前幾天意外找到一個簡單實用的庫- fake-useragent,能夠假裝生成headers請求頭中的User Agent值。python
安裝chrome
pip3 install fake-useragent
各瀏覽器的user-agent值瀏覽器
from fake_useragent import UserAgent
ua = UserAgent()
print(ua.ie) Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)
print(ua.opera) Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
print(ua.chrome) Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2
print(ua.firefox) Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1
print(ua.safari) Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25
但我認爲寫爬蟲最實用的是能夠隨意變換headers,必定要有隨機性。在這裏我寫了三個隨機生成user agent,三次打印都不同,隨機性很強,十分方便。markdown
from fake_useragent import UserAgent
ua = UserAgent()
print(ua.random) print(ua.random) print(ua.random) Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1 Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1 Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
爬蟲中具體使用方法dom
import requests
from fake_useragent import UserAgent
ua = UserAgent()
headers = {'User-Agent': ua.random}
url = '待爬網頁的url'
resp = requests.get(url, headers=headers)
省略具體爬蟲的解析代碼,你們能夠回去試試url
參考連接:點我spa