我正在解析 s3 日志以识别从 iMessage 预览发出的请求(在 Mac OS Sierra 和 iOS 10 上)。
UA 字符串的常见类型很少,但我无法分辨哪些来自浏览器和 imessage。我希望它是来自Safari的独特UA:
- 'AppleCoreMedia/1.0.0.14B100 (iPhone;U;CPU OS 10_1_1 像 Mac OS X;en_us)
^ 必须是iOS Safari,对吧?
2.手机短信/1.0CFNetwork/808.1.4 达尔文/16.1.0'
^ 我认为手机短信意味着imessage(希望如此)
-
Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.1.32 (KHTML, like Gecko) Mobile/14B100 Twitter for iPhone
^ Twitter via webkit webview?
-
Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriOS/54.0.2840.91 Mobile/14B100 Safari/602.1
^ 更多 iOS Chrome (我看到你 CriOS)
-
Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/10.0 Mobile/14B100 Safari/602.1
^ 更多 iOS Chrome?
-
Twitter/5002568 CFNetwork/760.6.3 Darwin/15.6.0 (x86_64)
^唽
我在尝试将iMessage爬虫重新路由到非角度页面时遇到了同样的问题,该页面将为其生成正确的元标记,并在此过程中发现了这个问题。我想我会写一个答案,因为我现在已经找到了。Apple的文档只说了不正确的...(Applebot/x.x)
User-Agent
。我在互联网上什么也没找到,所以我只将流量记录到公共服务器上的一个文件中,并通过iMessage共享链接。在我收到的日志文件中:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/601.2.4 (KHTML, like Gecko) Version/9.0.1 Safari/601.2.4 facebookexternalhit/1.1 Facebot Twitterbot/1.0
当我修改我的正则表达式以适应这个User-Agent
时,iMessage 爬虫终于被重新路由到正确的位置。
所以就是这样,它可能会在不另行通知的情况下进行更改,因为据我所知,它不存在于任何官方 Apple 文档中,但我希望这仍然有助于某人:)
使用此正则表达式来识别来自 IMsg 爬网程序的请求。
(Twitterbot(.*)facebookexternalhit)|(facebookexternalhit(.*)Twitterbot)
我已经测试过它,它运行良好。