我刚刚收集了一堆Google Buzz数据,我想知道哪些Buzz帖子引用了相同的新闻文章。问题是,这些帖子中的许多链接都被URL缩短程序修改了,因此可能会出现这样的情况:许多截然不同的缩短URL实际上都指向同一篇新闻文章。
鉴于我有数百万篇帖子,对我来说最有效的方式(最好是用python)是什么?
有没有人知道URL缩短服务是否有严格的请求速率限制?如果我把它降低到100/秒(都来自相同的IP地址),你认为我会遇到麻烦吗?
更新和初步解决方案这些响应导致了以下简单的解决方案
import urllib2
response = urllib2.urlopen("http://bit.ly/AoifeMcL_ID3") # Some shortened url
url_destination = response.url
就这样!
发布于 2010-03-16 20:37:18
获取缩短网址的目的地的最简单方法是使用urllib
。假设短URL是有效的(响应代码200),则将该URL返回给您。
>>> import urllib
>>> resp = urllib.urlopen('http://bit.ly/bcFOko')
>>> resp.getcode()
200
>>> resp.url
'http://mrdoob.com/lab/javascript/harmony/'
就是这样!
发布于 2010-03-16 20:19:18
(AFAIK)大多数url缩短工具会跟踪已经缩短的URL,因此向同一引擎发出的具有相同URL的多个请求将返回相同的短代码。
正如已经提出的,提取真实URL的最好方法是从对缩短的url的请求的响应中读取头部。但是,一些缩写服务(例如bit.ly)提供了an API method来返回长url
发布于 2010-03-16 20:16:00
我猜每秒100个请求,你肯定会遇到麻烦(我猜测最坏的情况是他们把你的IP作为垃圾邮件发送者列入黑名单)。
https://stackoverflow.com/questions/2454149
复制相似问题