User-Agent爬虫伪装

概念

User-Agent 即用户代理,简称“UA”,它是一个特殊字符串头。网站服务器通过识别 “UA”来确定用户所使用的操作系统版本、CPU 类型、浏览器版本等信息。而网站服务器则通过判断 UA 来给客户端发送不同的页面。

绝大多数网站都具备一定的反爬能力,禁止网爬虫大量地访问网站,反爬虫。

网站通过识别请求头中 User-Agent 信息来判断是否是爬虫访问网站。如果是,网站首先对该 IP 进行预警,对其进行重点监控,当发现该 IP 超过规定时间内的访问次数, 将在一段时间内禁止其再次访问网站。

常见UserAgent

系统浏览器User-Agent字符串
MacChromeMozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36
MacFirefoxMozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:65.0) Gecko/20100101 Firefox/65.0
MacSafariMozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15
WindowsEdgeMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763
WindowsIEMozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
WindowsChromeMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36
iOSChromeMozilla/5.0 (iPhone; CPU iPhone OS 7_0_4 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) CriOS/31.0.1650.18 Mobile/11B554a Safari/8536.25
iOSSafariMozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F70 Safari/600.1.4
AndroidChromeMozilla/5.0 (Linux; Android 4.2.1; M040 Build/JOP40D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36
AndroidWebkitMozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; M351 Build/KTU84P) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

如何在爬虫中查看自己的User-Agent?

r.request.headers

如何伪装成正常的浏览器?

1、先去浏览器中,复制出正常的User-Agent,(右键-检查-网络-请求头-user-agent)

2、编写一个字典,把上面得到的ua,存入

hd = {"User-Agent":"复制过来的真实UA"}

3、伪装自己是一个正常的浏览器

r2 = requests.get(url, headers=hd)

自己编写构造User-Agent池伪装

ua_list = ['ua1', 'ua2',  'ua3']

每次随机选择一个作为user-agent

使用第三方库来伪装UA。

fake-useragent库是一个专门用于生成伪装身份的Python库,可以让我们在网络爬虫、自动化测试等场景中轻松绕过一些反爬机制。它主要有以下特点:

  1. 使用简单:只需要简单地调用一个函数,就可以轻松地生成各种浏览器的User-Agent。
  2. 数据丰富:包含了大量现代浏览器、操作系统等的User-Agent数据。
  3. 自动更新:可以根据需要自动更新User-Agent数据,保持数据的新鲜度。
pip install fake-useragent
from fake_useragent import UserAgent

ua = UserAgent()

# 随机生成一个User-Agent
random_user_agent = ua.random
print(random_user_agent)

# 生成Chrome浏览器的User-Agent
chrome_user_agent = ua.chrome
print(chrome_user_agent)

# 生成Firefox浏览器的User-Agent
firefox_user_agent = ua.firefox
print(firefox_user_agent)
  • 12
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值