Gha*_*nem 2 python amazon amazon-web-services
今天我正在研究 Alexa API 以使用以下代码获取网站流行度排名:
import urllib.request, sys, re
site = '/sf/'
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))
Run Code Online (Sandbox Code Playgroud)
它运行良好,但突然停止了!,我手动检查了 API 链接:
http://data.alexa.com/data?cli=10&dat=s&url=/sf/
Run Code Online (Sandbox Code Playgroud)
它只返回一个词“好的”而不是一个 XML 字符串..有什么问题?!
小智 5
This might be what you are looking for
from bs4 import BeautifulSoup
import urllib.request
url='wikipedia.com'
rank_str =BeautifulSoup(urllib.request.urlopen("https://www.alexa.com/minisiteinfo/" +url),'html.parser').table.a.get_text()
rank_int=int(rank_str.replace(',',''))
print(rank_int)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4006 次 |
| 最近记录: |