使用python从缩短网址获取完整网址

我有网址列表,

l=['bit.ly/1bdDlXc','bit.ly/1bdDlXc',.......,'bit.ly/1bdDlXc']

我只想查看该列表中每个元素的完整URL.

这是我的方法,

import urllib2

for i in l:
    print urllib2.urlopen(i).url

但是当列表包含数千个url时,该程序需要很长时间.

我的问题:有没有办法减少执行时间或我必须遵循的任何其他方法?

最佳答案 第一种方法

如所建议的,完成任务的一种方法是使用official api to bitly,但是具有限制(例如,每个请求不超过15个shortUrl).

第二种方法

作为替代方案,可以避免获取内容,例如通过使用HEAD HTTP方法而不是GET.这里只是一个示例代码,它使用了优秀的requests包:

import requests

l=['bit.ly/1bdDlXc','bit.ly/1bdDlXc',.......,'bit.ly/1bdDlXc']

for i in l:
    print requests.head("http://"+i).headers['location']
点赞