Edit 09/2016: Verwenden Sie in Python 3 und höher urllib.request anstelle von urllib2
Eigentlich ist der einfachste Weg:
import urllib2 # the lib that handles the url stuff
data = urllib2.urlopen(target_url) # it's a file like object and works just like a file
for line in data: # files are iterable
print line
Sie brauchen nicht einmal "Readlines", wie Will vorgeschlagen hat. Sie können es sogar verkürzen auf: *
import urllib2
for line in urllib2.urlopen(target_url):
print line
Denken Sie jedoch daran, dass in Python die Lesbarkeit wichtig ist.
Dies ist jedoch der einfachste, aber nicht der sichere Weg, da Sie bei der Netzwerkprogrammierung meistens nicht wissen, ob die zu erwartende Datenmenge eingehalten wird. Sie sollten also im Allgemeinen eine feste und angemessene Datenmenge lesen, von der Sie wissen, dass sie für die erwarteten Daten ausreicht, aber verhindert, dass Ihr Skript überflutet wird:
import urllib2
data = urllib2.urlopen("http://www.google.com").read(20000) # read only 20 000 chars
data = data.split("\n") # then split it into lines
for line in data:
print line
* Zweites Beispiel in Python 3:
import urllib.request # the lib that handles the url stuff
for line in urllib.request.urlopen(target_url):
print(line.decode('utf-8')) #utf-8 or iso8859-1 or whatever the page encoding scheme is