2013-02-19 197 views
4

兩天的新手到Python(和編程),所以請溫和。轉換短網址

我有大約1500個來自Twitter的縮短網址。他們都採用以下格式:http://t.co/ ...

使用這個擴展短網址:

import urllib2 
a = urllib2.urlopen('http://t.co/..') 
print a.url 

最後兩行有不同的URL重複約1500種不同的時間。

只要URL指向的頁面存在,它就會正常工作,但是當它沒有錯誤消息並且它停止在該點時。我向代碼中添加了什麼,以便它返回一個「未找到的頁面」並繼續到下一個URL並在不停止的情況下遍歷整個列表。

回答

2

假設你正在使用python 2(Python 3中有異常處理稍其他語法)

for url in urls: 
    try: 
     a = urllib2.urlopen(url) 
    except urllib2.HTTPError, e: 
     print "Error", e 
     continue 

..... do something with a 
+0

非常感激,會因爲我是從班回來,儘快試試這個,讓你知道如何去。 – user2087765 2013-02-19 16:35:09

+0

工程就像一個魅力,謝謝! – user2087765 2013-02-20 15:56:55

+0

猜測我說得太快了,我仍然收到錯誤信息,這會阻止整個過程。有什麼建議麼?這是我得到的,或者至少是錯誤消息的前幾行:Traceback(最近調用最後一次): 文件「/Users/Nanu/Documents/urltest.py」,行969,在 a = urllib2 .urlopen(url) 文件「/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py」,行126,在urlopen 返回_opener.open(url,data,timeout) – user2087765 2013-02-20 16:41:52