2014-04-17 39 views
1

我使用http計劃,我想從HTTP讀取數據readlines方法:如何()從urllib的

data = urllib.request.urlopen(someAddress).read() 

而且從它像通過readlines方法()返回線路的方法進行文件準備行列表。

怎麼辦?

+0

你可以很容易地嘗試這個自己。 –

回答

4

urlopen()返回的行爲就像一個文件中的對象,並支持.readlines()

response = urllib.request.urlopen(someAddress) 

lines = response.readlines(): 

它還支持迭代:

response = urllib.request.urlopen(someAddress) 

for line in response: 

你已經叫.read()響應對象上;你也可以只調用該str.splitlines()

lines = data.splitlines(True) 

其中True告訴str.splitlines()保存行尾。

1

我通常做類似的事情。我使用urllib2,但它不應該如此不同:

from urllib2 import Request, urlopen 

def getPage(link, splitting = '\n'): 
    request = Request(link) 
    try: 
     response = urlopen(request) 
    except IOError: 
     return -1 
    else: 
     the_page = response.read() 
     return the_page.split(splitting) 
+0

謝謝。這爲我想做的工作,這是所有的行在列表形式。 – rohit