前幾天意外找到一個簡單實用的庫- fake-useragent,能夠假裝生成headers請求頭中的User Agent值。不再用,重複作複製粘貼這種很Low的工做了。chrome
安裝瀏覽器
pip3 install fake-useragent
各瀏覽器的user-agent值dom
from fake_useragent import UserAgent ua = UserAgent() #ie瀏覽器的user agent print(ua.ie) Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US) #opera瀏覽器 print(ua.opera) Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11 #chrome瀏覽器 print(ua.chrome) Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2 #firefox瀏覽器 print(ua.firefox) Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1 #safri瀏覽器 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,三次打印都不同,隨機性很強,十分方便。大鄧以爲這個庫,只會這random方法就能夠了。
ide
from fake_useragent import UserAgent ua = UserAgent() print(ua.random) print(ua.random) print(ua.random)
Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; Trident/6.0) Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2 Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
爬蟲中具體使用方法url
import requests from fake_useragent import UserAgent ua = UserAgent() headers = {'User-Agent': ua.random} url = '待爬網頁的url' resp = requests.get(url, headers=headers) #省略具體爬蟲的解析代碼,你們能夠回去試試 ...