Ich versuche, eine lokale Datei mit urllib2 zu öffnen. Wie kann ich das machen? Wenn ich die folgende Zeile mit urllib probiere:
resp = urllib.urlopen(url)
es funktioniert korrekt, aber wenn ich es umstelle:
resp = urllib2.urlopen(url)
Ich bekomme:
ValueError: unknown url type: /path/to/file
wo diese Datei definitiv beendet wird.
Vielen Dank!
Setzen Sie einfach "file://"
vor den Pfad
>>> import urllib2
>>> urllib2.urlopen("file:///etc/debian_version").read()
'wheezy/sid\n'
In urllib.urlopen-Methode: Wenn der URL-Parameter keine Schema-ID hat, wird eine lokale Datei geöffnet. aber das urllib2 verhält sich nicht so.
Die Methode urllib2 kann sie also nicht verarbeiten.
Es ist immer gut, die Schemakennung 'file: //' in den Methodenaufruf für den Parameter url aufzunehmen.
Ich hatte das gleiche Problem und eigentlich wurde mir klar, dass der Browser den genauen lokalen Pfad auf der URL-Leiste anzeigt, wenn Sie die Quelle der Seite herunterladen und dann auf Chrome öffnen. Viel Glück!