此页面表明它使用自定义用户代理,但未提及名称。如果用户代理来自 PageSpeed,我希望能够运行一些逻辑。Google PageSpeed 用户代理的名称是什么?
11 回答
其他答案中的信息已过时:目前,Google PageSpeed 并未在其HTTP 标头中传递“ Google Page Speed Insights ”字符串,而是传递了“ Chrome-Lighthouse ”字符串。
一个例子:User-Agent
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5 Build/MRA58N) AppleWebKit/537.36(KHTML, like Gecko) Chrome/69.0.3464.0 Mobile Safari/537.36 Chrome-Lighthouse
请注意,即使您在其他浏览器(例如 Firefox)中运行 Google PageSpeed ,该字符串也是准确的 « Chrome-Lighthouse »。
我创建了一个脚本,它返回两个用户代理,一个用于桌面,另一个用于移动,这些是
手机:
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko; Google Page Speed Insights) Chrome/27.0.1453 Mobile Safari/537.36
适用于桌面
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko; Google Page Speed Insights) Chrome/27.0.1453 Safari/537.36
2020年:
- Chrome-Lighthouse : 用于移动设备
- Google Page Speed Insights : 桌面版
2020年5月,你去:
移动的:
Mozilla/5.0 (Linux; Android 7.0; Mo to G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4143.7 Mobile Safari/537.36 Chrome-Lighthouse
桌面:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4143.7 Safari/537.36 Chrome-Lighthouse
我刚刚进行了测试,实时请求了我的站点和结帐日志。
用户代理日志
网页客户端测试:@https: //developers.google.com/speed/pagespeed
date : "21/Feb/21"
user-agent-mobile : "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.175 Mobile Safari/537.36 Chrome-Lighthouse",
user-agent-desktop : "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.175"
节点 CLI lighthouse --version
@ 7.1.0:
command : `lighthouse example.com --view`
date : "21/Feb/21"
user-agent-mobile : "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4143.7 Mobile Safari/537.36 Chrome-Lighthouse",
user-agent-desktop : "Mozilla/5.0 ($ENV_OS) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/$ENV_CHROME Safari/537.36"
请注意,对于user-agent-desktop
fornode-cli
测试,有两个变量$ENV_OS
,$ENV_CHROME
它们会根据运行环境而有所不同。
2021 年 7 月(根据我们的日志):
移动代理与 2021 年 2 月的 Ghassan Maslamanis 回答中的相同。
桌面用户代理现在是:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.175 Safari/537.36 Chrome-Lighthouse
因此,根据 Oleg Kopachovets 的回答,他们像 2020 年 5 月那样将“Chrome-Lighthouse”放回字符串的末尾。
此来源(http://riskyinternet.com/google-page-speed-insights-tool-open-for-use-by-scammers/)表明 UA 字符串如下所示:
“Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.8 (KHTML, like Gecko; Google Page Speed Insights) Chrome/19.0.1084.36 Safari/536.8”</p>
2019 年 12 月 -
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3694.0 Safari/537.36 Chrome-Lighthouse
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3694.0 Mobile Safari/537.36 Chrome-Lighthouse
从 Google Page Speed Insights 检查用户代理这是检查移动和网络服务的两个实例
{ "pattern": "Chrome-Lighthouse",
"instances": [
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3694.0 Safari/537.36 Chrome-Lighthouse",
"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3694.0 Mobile Safari/537.36 Chrome-Lighthouse"
]}
如果用户代理是机器人,我正在使用这些对象使用正则表达式进行验证
regex = RegExp("Chrome-Lighthouse","ig")
regex.test("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3694.0 Safari/537.36 Chrome-Lighthouse")
此正则表达式与此答案时的 UA 匹配:
// javascript PSI regex
navigator.userAgent.match(/nux.*oto\sG|x11.*fox\/54|x11.*ome\/39|x11.*ome\/62|oid\s6.*1.*xus\s5.*MRA58N.*ome|JWR66Y.*ome\/62|woobot|speed|ighth|tmetr|eadle/i)
// taken from WP plugin Fast Velocity Minify
如果您打算注入 js,请负责任地使用它并避免使用 document.write。
检查我们是否有
像壁虎
在 $_SERVER['HTTP_USER_AGENT']