Guten Tag,
ich würde gerne mit python eine txt-datei auslesen die sich auf einem webspace befindet.
mit open("adresse",'r') scheints ja nicht zu klappen.
Kann man mit python trotzdem irgendwie onlinedateien auslesen?
Bekomme mit der open anweisung nen IOError. Schätze mal das funktioniert nur bei lokal abgespeicherten dateien.
mfG und vielen dank im vorraus,
NeverGod
Online dokumente auslesen?
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Dafür kannst Du das urllib-Modul benutzen.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
Klar, weil du ja nur den Text ausliest also kannst du ihn auch schreiben.
Aber in manchen Fällen kann das auch nicht funktionieren wie bei php-files also Dokumente die bei zugriff vom webserver ausgeführt werden.
Bei solchen bekommt man nur den generierten Text.
Verschlüsselt oder binäre dateien gehen prizipiell auch nur sind sie halt verschlüsselt
Aber in manchen Fällen kann das auch nicht funktionieren wie bei php-files also Dokumente die bei zugriff vom webserver ausgeführt werden.
Bei solchen bekommt man nur den generierten Text.
Verschlüsselt oder binäre dateien gehen prizipiell auch nur sind sie halt verschlüsselt
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Nein! Schon auf einer Workstation gibt es das Konzept von Read-Only. Bei Webservern ist das noch einmal etwas ganz anderes, schließlich regelt http afaik nicht, was mit übertragenden Dateien passiert.Xynon1 hat geschrieben:Klar, weil du ja nur den Text ausliest also kannst du ihn auch schreiben.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
also wie gesagt ich will quasi per knopfdruck eine .py datei von meinem webspace runterladen.
oh und noch eine sache,
ich habe die datei jetzt mit x= urllib.urlopen .... , 'w')geöffnet und kann sie auch lesen. Wenn ich jetzt aber
x.write(sounso) eingebe, kommt das addinfourl kein writeattribut besitzt.
habe aber nirgends addinfourl benutzt! Was läuft da schief?
oh und noch eine sache,
ich habe die datei jetzt mit x= urllib.urlopen .... , 'w')geöffnet und kann sie auch lesen. Wenn ich jetzt aber
x.write(sounso) eingebe, kommt das addinfourl kein writeattribut besitzt.
habe aber nirgends addinfourl benutzt! Was läuft da schief?
Code: Alles auswählen
if actuallPW==pw:
x = urllib.urlopen("http://a*****loader/login/id.txt",'w')
x.urlwrite(neuid)
x.urlclose()
erfolg = Tk()
lab1 = Label(erfolg,text="Erfolg! Id geändert!")
lab1.pack()
okbut = Button(erfolg,text="OK", command = erfolg.destroy)
okbut.pack()
ja, weil urlopen kein mode-argument kennt, sondern nur lesen kann und urllib.urlopen("...") reicht dafür
@Hyperion sicher das geht auch nur wenn man die nötigen berechtigungen hat, aber das ist doch eine ganz andere geschichte
@Hyperion sicher das geht auch nur wenn man die nötigen berechtigungen hat, aber das ist doch eine ganz andere geschichte
bearbeite deine datei lokal und schicke sie dann zB. mit hilfe der ftplib hoch
http://docs.python.org/library/ftplib.html
http://docs.python.org/library/ftplib.html
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Ja eben! Du hattest das aber behauptet! Aber damit ist es dann ja geklärtXynon1 hat geschrieben: @Hyperion sicher das geht auch nur wenn man die nötigen berechtigungen hat, aber das ist doch eine ganz andere geschichte
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
Ok, vieleicht habe ich mich missverständlich ausgedrückt,
aber ich meinte bzw sagte, dass man den text den man auslesen kann - also der dann zB. per .read() ausgelesen werden könnte, frei handhabbar ist.
Mit diesen Daten kann man dann alles machen, weil man ja schon zu den Text hat.
Es kann natürlich sein das man anderen Text ausliest, weil er zB .generiert wird, oder man kein handle auf die Datei bekommt da einem die nötigen Rechte fehlen.
Ich hoffe das ist etwas deutlicher ausgedrückt.
aber ich meinte bzw sagte, dass man den text den man auslesen kann - also der dann zB. per .read() ausgelesen werden könnte, frei handhabbar ist.
Mit diesen Daten kann man dann alles machen, weil man ja schon zu den Text hat.
Es kann natürlich sein das man anderen Text ausliest, weil er zB .generiert wird, oder man kein handle auf die Datei bekommt da einem die nötigen Rechte fehlen.
Ich hoffe das ist etwas deutlicher ausgedrückt.