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

Alexa网站排名API突然失效,返回“Okay”而非XML的问题求助

Alexa Site Rank API失效问题解析

问题背景

你之前用这段Python代码调用Alexa的站点排名API获取网站受欢迎度:

import urllib.request, sys, re
site = 'https://stackoverflow.com/questions/'
xml = urllib.request.urlopen('http://data.alexa.com/data?cli=10&dat=s&url=%s'%site).read()
try:
    rank = int(re.search(r'<POPULARITY[^>]*TEXT="(\d+)"', xml).groups()[0])
except:
    rank = -1
print('Your rank for %s is %d!\n' % (site, rank))

原本运行正常,但突然失效了——手动访问API链接http://data.alexa.com/data?cli=10&dat=s&url=https://stackoverflow.com/questions/时,只返回了单词“Okay”,完全不是预期的XML格式。

问题原因

Alexa这个旧的公开数据API已经被弃用了。亚马逊早就停止维护这个免费接口,现在访问它只会返回无意义的“Okay”响应,不再提供任何站点排名的XML数据。这也是为什么你的正则匹配完全失效的原因——根本没有<POPULARITY>标签可以匹配了。

替代方案

如果还需要获取站点排名数据,你可以考虑这些方向:

  • 使用Alexa Internet的官方付费API:现在他们只提供商业级的访问服务,需要注册付费账号才能获取数据。
  • 改用其他免费/低成本的站点排名工具API:比如SimilarWeb、Ahrefs的免费层级接口,或者StatCounter的公开数据接口,不过这些接口的调用限制和返回格式各有不同,需要重新适配代码。
  • 注意:很多免费的第三方排名数据接口可能存在数据延迟或者精度问题,使用前最好先测试验证。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 07:04:47