UserAgent就是用戶代理,又叫報(bào)頭,是一串字符串,相當(dāng)于瀏覽器的身份證號
在利用爬蟲爬取網(wǎng)站數(shù)據(jù)時(shí),頻繁更換它可以避免觸發(fā)相應(yīng)的反爬機(jī)制
-
安裝
pip install fake-useragent
-
用法
引入,生成實(shí)例:
from fake_useragent import UserAgent
ua = UserAgent()
如果報(bào)錯(cuò) fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached
首先檢查網(wǎng)絡(luò),然后:
如果不希望緩存數(shù)據(jù)庫或不需要可寫文件系統(tǒng):
ua = UserAgent(cache=False)
如果不想使用宿主緩存服務(wù)器,可以禁用服務(wù)器緩存:
ua = UserAgent(use_cache_server=False)
如果以上方法均報(bào)錯(cuò),執(zhí)行:
ua = UserAgent(verify_ssl=False)
由于 fake-useragent 庫維護(hù)的 user-agent 列表存放在在線網(wǎng)頁上
過低版本依賴的列表網(wǎng)頁可能就會報(bào) 403
隨手更新:
ua.update()
查看全部 user-agent :
ua.data_browsers
In [20]: len(reduce(lambda a, b: a+b, ua.data_browsers.values()))
Out[20]: 250
獲取隨機(jī)值:
In [26]: ua.random
Out[26]: 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/31.0.1650.16 Safari/537.36'
-
卸載
pip install -U fake-useragent