前几天意外找到一个简单实用的库- 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