微信6.0内嵌浏览器User-Agent字符串增加了NetType字段

User-Agent(用户代理)字符串是Web浏览器用于声明自身型号版本并随HTTP请求发送给Web服务器的字符串,在Web服务器上可以获取到该字符串。

从微信6.0开始,其内嵌的浏览器在User Agent字符串中增加了NetType字段用于标识客户端(手机)当前的网络环境,经测试,该字段至少有以下3个取值:

  • NetType/WIFI
  • NetType/2G
  • NetType/3G+

分别对应于Wifi、2G、3G以上网络环境。因此,Web服务器可以据此识别客户端网络环境并提供有针对性的内容。

附测试数据:

  • iPhone 5 / iOS 8.0 / Wifi
    Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/WIFI
  • iPhone 5 / iOS 8.0 / 2G
    Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/2G
  • iPhone 5 / iOS 8.0 / 3G
    Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/3G+
  • 红米 / Android 4.2.2 / Wifi
    Mozilla/5.0 (Linux; U; Android 4.2.2; zh-cn; 2014011 Build/HM2014011) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/6.0.0.50_r844973.501 NetType/WIFI
  • 小米3 / Android 4.4.2 / Wifi (微信5.3还没有提供 NetType 字段)
    Mozilla/5.0 (Linux; Android 4.4.2; MI 3 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36 MicroMessenger/5.3.0.51_r697493.440

参考:

在尝试构造微信User-Agent字符串时,需要考虑到微信浏览器(WeChat内置浏览器)的一些常见特征。虽然微信有自己的特定标识,但直接复制其完整的User-Agent通常是不推荐的,因为这可能会被服务器识别为非标准或机器人访问。然而,你可以基于通用浏览器信息并结合微信浏览器特有的标记来创建一个近似的User-Agent。 简要版解释[^1]: User-Agent通常会包含浏览器类型(如'Mozilla'或'AppleWebKit')、操作系统、内核版本以及浏览器版本。对于微信内置浏览器,可以参考类似以下结构: ```plaintext 'Mozilla/5.0 (Linux; Android 10; Wechat Build/MX4GQ190620) AppleWebKit/537.36 (KHTML, like Gecko) Version/7.0.22 MicroMessenger/7.0.22.1810(0x27000E33) NetType/WIFI Language/zh_CN' ``` 这里的关键点包括"MicroMessenger"标识和版本号。为了模拟微信浏览器,你可以这样构造: ```python # 基于通用浏览器信息 os_name = "Linux" os_version = "Android 10" app_name = "Wechat" app_version = "7.0.22" wechat_substring = "MicroMessenger/" + app_version # 构造User-Agent user_agent = f'Mozilla/5.0 ({os_name}; {os_version}; {app_name} Build/{app_version}) AppleWebKit/537.36 (KHTML, like Gecko) Version/{app_version} {wechat_substring} (NetType/WIFI Language/zh_CN)' ``` 请注意,这个例子是基于一般的推测和模式,实际的微信User-Agent可能更复杂,并随微信更新而变化。在自动化任务中,最好还是使用真实用户设备的User-Agent或者通过抓包工具获取到的样本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值