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

如何在Google Sheets中用IMPORTXML抓取SimilarWeb全球网站排名

Google Sheets 抓取SimilarWeb全球排名实现方案

SimilarWeb页面数据为JavaScript动态渲染,原先适配Alexa的IMPORTXML类静态抓取函数无法直接获取渲染后的排名数据,可通过以下无第三方依赖的方式实现需求:

自定义函数实现步骤

  • 打开目标Google Sheets文件,点击顶部菜单栏「扩展程序」-「Apps Script」打开脚本编辑器
  • 清空编辑器内默认生成的代码,粘贴以下脚本:
function SIMILARWEB_RANK(domain) {
  const targetUrl = `https://www.similarweb.com/website/${domain}/`;
  const fetchOptions = {
    headers: {
      "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",
      "Accept-Language": "en-US,en;q=0.9"
    },
    muteHttpExceptions: true
  };
  try {
    const response = UrlFetchApp.fetch(targetUrl, fetchOptions);
    const pageContent = response.getContentText();
    const rankResult = pageContent.match(/"GlobalRank":\{"rank":(\d+)/);
    return rankResult && rankResult[1] ? parseInt(rankResult[1]) : "未获取到有效排名";
  } catch (err) {
    return "抓取异常,请检查域名格式";
  }
}
  • 点击编辑器顶部保存按钮,自定义项目名称后完成脚本授权(自用脚本触发谷歌安全提示时,选择「高级」-「继续前往项目」即可授予权限)
  • 回到表格单元格即可直接调用函数,例如查询谷歌排名时输入:
    =SIMILARWEB_RANK("google.com")
    单元格将直接返回对应排名数值,谷歌域名的返回结果为1,和页面展示结果一致。

使用注意

  • 输入域名时无需添加https://、www.前缀,直接填写根域名即可,例如查询百度排名直接输入baidu.com
  • 请勿短时间内高频批量调用函数,SimilarWeb存在反爬限制,高频请求会被临时拦截导致抓取失败
  • 若偶发抓取失败,等待2-3分钟后重新触发计算即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 03:54:31