如何解决User-Agent请求标头的不同部分的含义以及可以更改但仍保持有效的部分
我正在尝试从网站上抓取数据以构建预测系统,但由于请求率高,我使用代理,并希望在每个请求中使用随机更改的User-Agent(UA)标头。使用Web代理检查了不同设备和浏览器发送的标头后,我不确定标头的每个部分意味着什么。我希望能够构建一个具有随机选择的不同组件的UA字符串,但最终的字符串应为有效的标头,以便Web服务器接受请求。
我已经在网上查看并尝试研究不同组件的含义,但是我只能找到一个随机标头的样本,但不是每个部分的含义。我已尽力使这篇文章尽可能详细,但我很欣赏我的问题清单很长而且很长,您可能没有时间回答所有问题,但我问您是否知道他们中的任何一个都意味着我将被指示正确的方向,甚至更好的是详细的答案。谢谢大家。
Mozilla/5.0 (Macintosh; Intel Mac OS X 11_0) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/14.0.1 Safari/605.1.15
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:70.0) Gecko/20100101 Firefox/70.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/13.0.1 Safari/605.1.15
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/78.0.3904.70 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/78.0.3904.70 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299
Mozilla/5.0 (iPod; cpu iPhone OS 13_1_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/13.0.1 Mobile/15E148 Safari/604.1
Mozilla/5.0 (iPhone; cpu iPhone OS 13_1_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/13.0.1 Mobile/15E148 Safari/604.1
Mozilla/5.0 (iPad; cpu iPhone OS 13_1_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/13.0.1 Mobile/15E148 Safari/604.1
以下是我对上述标头的查询,尽管我可能不会在每个问题中都重复此问题,但我还是请您考虑一下我的问题,并考虑所提议的更改是否会使标头无效或仍然有效。 / p>
首先,关于标题部分的第一列:
- “ Mozilla / 5.0” 部分是什么意思?可以使用5.0以外的其他版本吗?在哪里可以找到版本列表?
- 对于“ Intel Mac OS X” 版本-我可以对macOS使用任何版本吗?在哪里可以找到版本列表?
- 在第二个请求中,为什么要用句点而不是下划线分隔版本?
- 第二个和第五个标头的“ rv” 属性的意义是什么?可以更改吗?
- 随着即将发布的Apple Silicon,标题将是什么,而不是“ Intel Mac OS” ?它会改变吗? (我了解到,由于Apple版本的机密性,该问题可能无法得到任何答案,但是希望获得任何帮助!)
- 什么是“ Windows NT” ?它旁边的数字(例如10.0)代表什么?如果是版本,我在哪里可以找到版本列表?
- 是否可以在3个Windows查询中使用“ Win32” 代替“ Win64” ?
- 我可以将“ x64” 更改为“ amd64” 还是更改为“ arm” ?有效的架构是什么?
- 在最后的Apple设备标题中,我可以用“ GPU” 替换“ cpu” 语句吗?否则,此标头的意义是什么?
- 为什么所有Apple设备标头都使用“ iPhone OS 13_1_3” ,而不管它是否是其他设备?
- “ 13_1_3” 的意义是什么?如果是版本,我在哪里可以找到版本列表?
- 为什么所有的Apple标头都使用“像Mac OS X一样” ?
现在,关于标题部分的第二列:
- “ AppleWebKit” 或“ Gecko” 是什么意思?还有什么其他选择?
- 在哪里可以找到AppleWebKit和Gecko的版本列表?
- “(KHTML,像壁虎一样)” 是什么意思?
现在,从第三列开始:
- 为什么某些标头包含“ Version” 语句,而其他标头却显示他们正在使用的浏览器版本?
- 对于“版本” 语句,版本代表什么版本?在哪里可以找到有效版本的列表?
- 为什么某些标头具有1个版本(例如“ Firefox / 70.0” ),而其他标头却具有3个版本(例如“ Chrome / 58.0.3029.110 Safari / 537.36 Edge / 16.16299” 或“版本/13.0.1移动版/ 15E148 Safari / 604.1” )和两者之间的任意数字(例如“ Chrome / 78.0.3904.70 Safari / 537.36” )?
- 每个数字旁边是什么意思?在哪里可以找到有效号码列表?
- “移动” 语句旁边的数字代表什么?
如果您从头到尾都读完了,那么我感谢您的耐心! :) 我期待阅读对此帖子的回复。 非常感谢您。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。