Seite 1 von 1

Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:24
von nevergod
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

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:26
von Hyperion
Dafür kannst Du das urllib-Modul benutzen.

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:30
von nevergod
Vielen herzlichen Dank :) hat geklappt
edit:

kann man damit auch dateien von einem server herrunterladen?

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:36
von Xynon1
Kommt darauf an welche, aber Prinzipiell schon.

Solange du eine Datei auslesen kannst, solltest du sie auch neu schreiben können.

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:47
von nevergod
Ich wollte .py dateien von dem server runterladen

würde es also mit datei = urlib.urlopen('pfad','r')
und
writefile = open(datei,'w')

gehen?

oder muss da ein anderer code herhalten?

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:52
von DasIch
Xynon1 hat geschrieben:Solange du eine Datei auslesen kannst, solltest du sie auch neu schreiben können.
Sicherlich nicht.

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:54
von Xynon1
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

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:58
von Hyperion
Xynon1 hat geschrieben:Klar, weil du ja nur den Text ausliest also kannst du ihn auch schreiben.
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.

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 13:59
von nevergod
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?

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()

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:06
von Xynon1
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

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:10
von nevergod
also kann ich auf dem server nix ändern / überschreiben?

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:11
von Xynon1
jedenfalls nicht auf die art, aber wenn es dir nur um den tranport geht nutz doch ftp oder etwas entsprechendes

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:12
von nevergod
auf welche art dann? :K

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:15
von Xynon1
bearbeite deine datei lokal und schicke sie dann zB. mit hilfe der ftplib hoch
http://docs.python.org/library/ftplib.html

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 14:56
von Hyperion
Xynon1 hat geschrieben: @Hyperion sicher das geht auch nur wenn man die nötigen berechtigungen hat, aber das ist doch eine ganz andere geschichte
Ja eben! Du hattest das aber behauptet! Aber damit ist es dann ja geklärt :-)

Re: Online dokumente auslesen?

Verfasst: Samstag 9. Oktober 2010, 15:02
von Xynon1
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.