You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Node.js(非网页抓取)获取PageSpeed Insights报告ID及专属URL

如何通过Node.js获取PageSpeed Insights的专属报告URL/ID

核心结论

官方PageSpeed Insights v5 API并未在公开文档中明确提供网页报告的专属ID/URL,但可以通过API响应中的隐藏字段构造,无需网页抓取。以下是两种可行方案:


方案1:基于API响应字段手动构造报告URL

网页版报告的URL格式是固定的:
https://pagespeed.web.dev/analysis/{编码后的目标URL}/{报告ID}

关键字段说明

  • 编码后的目标URL:将原URL的://和/替换为-,例如https://example.com转换为https-example-com
  • 报告ID:从API响应的lighthouseResult.config.settings.psiId字段提取(该字段实际存在于v5 API响应中,未在公开文档标注)

Node.js示例代码

const fetch = require('node-fetch');

async function generatePSIReportUrl(targetUrl) {
  // 可添加API_KEY以提升请求限额,无KEY也可调用
  const apiEndpoint = `https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=${encodeURIComponent(targetUrl)}`;
  
  const res = await fetch(apiEndpoint);
  const psiData = await res.json();
  
  const reportId = psiData.lighthouseResult.config.settings.psiId;
  const encodedTargetUrl = targetUrl.replace(/https?:\/\//g, '').replace(/\//g, '-');
  
  return `https://pagespeed.web.dev/analysis/${encodedTargetUrl}/${reportId}`;
}

// 调用示例
generatePSIReportUrl('https://example.com').then(reportUrl => {
  console.log('专属报告URL:', reportUrl);
});

方案2:使用第三方包简化流程

使用GoogleChromeLabs维护的psi包,它封装了PSI API调用逻辑,同时可直接获取所需字段:

安装依赖

npm install psi

Node.js示例代码

const psi = require('psi');

async function generatePSIReportUrl(targetUrl) {
  const psiResult = await psi(targetUrl, {
    nokey: true, // 无API_KEY时启用,有KEY则替换为key: 'YOUR_API_KEY'
    strategy: 'mobile' // 可选,指定分析设备:desktop/mobile
  });
  
  const reportId = psiResult.data.lighthouseResult.config.settings.psiId;
  const encodedTargetUrl = targetUrl.replace(/https?:\/\//g, '').replace(/\//g, '-');
  
  return `https://pagespeed.web.dev/analysis/${encodedTargetUrl}/${reportId}`;
}

// 调用示例
generatePSIReportUrl('https://example.com').then(reportUrl => {
  console.log('专属报告URL:', reportUrl);
});

注意事项

  • 网页报告并非永久存储,Google会定期清理旧报告,短期(数周~数月)内可正常访问
  • 若需长期留存报告,建议同时保存API返回的完整分析数据,或通过程序化方式导出PDF存档

内容的提问来源于stack exchange,提问作者Gabe Koleszar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 07:47:17