關於隨機瀏覽頭偽裝fake-UserAgent


使用:

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,三次打印都不一樣,隨機性很強,十分方便。

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

爬蟲中具體使用方法

import requests from fake_useragent import UserAgent ua = UserAgent() headers = {'User-Agent': ua.random} url = '待爬網頁的url' resp = requests.get(url, headers=headers)


注意:
  • fake-useragent 將收集到的數據緩存到temp文件夾, 例如 /tmp, 更新數據:
from fake_useragent import UserAgent ua = UserAgent() ua.update()
  • 1
  • 2
  • 3
  • 有時候會因為網絡或者其他問題,出現異常(fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached), 可以禁用服務器緩存(從這里踩了一個坑, 沒仔細看文檔的鍋):
from fake_useragent import UserAgent ua = UserAgent(use_cache_server=False)
  • 1
  • 2
  • 可以自己添加本地數據文件(v0.1.4+)
import fake_useragent # I am STRONGLY!!! recommend to use version suffix location = '/home/user/fake_useragent%s.json' % fake_useragent.VERSION ua = fake_useragent.UserAgent(path=location) ua.random

文檔
https://pypi.org/project/fake-useragent/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM