datein öffnen

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
LuScHe

Wie kann ich eine txt-Datei über ein netzwerk öffnen? :?:
Beyond
User
Beiträge: 227
Registriert: Freitag 6. September 2002, 19:06
Kontaktdaten:

Deine Frage ist recht ungenau. Was soll "über Netzwerk" heißen? Welches Protokoll?

HTTP ist z.B. einfach ...
LuScHe
User
Beiträge: 19
Registriert: Samstag 21. Dezember 2002, 19:52
Kontaktdaten:

Ich will ne .txt datei über ein netzwerk öffnen & einlesen. Protokoll is egal
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Wir sind glaube ich etwas irritiert. Was verstehst du unter Netzwerk
  • Fileserver die Dateien bereitstellen, z. B. via NFS.
  • Internet Server, welche Dateien via HTTP, FTP, etc bereitstellen
Beide Varianten unterscheiden sich m. E. wesentlich. Am besten du beschreibst an einem Beispiel einfach mal, welche Datei du öffnen willst, z. B.: wie kann ich die Datei www.irgendwo.info/readme.txt mit Python zum lesen öffnen und in /tmp/meineInfo.txt schreiben.

trotzdem frohes Fest

Hans
LuScHe
User
Beiträge: 19
Registriert: Samstag 21. Dezember 2002, 19:52
Kontaktdaten:

Ich möchte in einem Heimnetzwerk eine Textdatei öffnen, die auf einem anderem rechner liegt.

Damit möchte ich zwei Programme übers Netzwerg mitteinander komunitzieren lassen.
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Kommt noch ne Frage: Welche Betriebssysteme spielen mit?

wenn's Windows Freigabe ohne Spassword ist, sollte es ja super einfach gehen. Ich gehe mal davon aus, dass dein Netwerk arbeitet. Beispiel:

Verzeichnis C:\irgend\wo\auf\Rechner1\shared ist freigegeben mit Freigabename shared. Nun kann ich von Rechner2 mit \\rechner1\shared zugreifen. Probiers mal mit deinem Browser. file('\\rechner1\shared\mein.txt', "r") sollte bei Python auch gehen. Ich hoffe du weißt bereits, wie man eine Textdatei öffnet und einliest.

Mit Linux wird's da schon etwas aufwendiger. Da gibt's mit Sicherheit ein ganze Menge an Möglichkeiten, aber da muß ich selber erst nachschlagen.

Hans
LuScHe
User
Beiträge: 19
Registriert: Samstag 21. Dezember 2002, 19:52
Kontaktdaten:

danke danke danke es geht :D
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Es ist weihnachten. Lass uns doch bitte teilhaben. :D Zeig doch mal deinen Code
LuScHe
User
Beiträge: 19
Registriert: Samstag 21. Dezember 2002, 19:52
Kontaktdaten:

Der Code is noch net fertig aber das öffnen geht nach dem schema:

Code: Alles auswählen

datei=open("192.168.2.4/shared/shared.txt","r")
192.168.2.4 ist die IP von dem PC auf dem die datei liegt, shared der freigegebene ordner und shared.txt die freigegebene textdatei

Wenn das programm fertig is kann ich den code ja ins Forum schreiben ;)
ASCII158
User
Beiträge: 80
Registriert: Samstag 28. September 2002, 15:40
Wohnort: München

Da das am ehesten noch hierhin passt, frage ich hier mal:

Wie kann ich eine Bilddatei (.gif) mit einem Pythonscript öffnen, und auf der festplatte wieder abspeichern?

Wenn ich das über urllib.urlopen mache, ist die gif-Datei nicht lesbar...
mfg,

10011110
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

sag mal genauer, wie sich das mit dem Server verhält, wo sie drauf liegt. Über welche Protokolle ist er ansprechbar, bzw. ist es ein Server im Internet oder im lokalem Netzwerk?

Da du es mit urlopen versuchst gehe ich mal von I-Net aus :wink: . Tja, ich würde FTP nehmen, falls der Server das anbietet. Ansonsten hab ich mal nen Test gemacht und es hat geklapt:

Code: Alles auswählen

from urllib import urlopen
f=open("C:/Temp/test.gf","wb")
f.write(urlopen("http://mitglied.lycos.de/sethurx/Bilder/earth.gif").read())
f.close()
ist zwar nicht die feine englische Art, aber funktionieren tuts, wenn eine Verbindung aktiv ist. so müsste es auch gehen:

Code: Alles auswählen

import httplib 

conn = httplib.HTTPConnection("mitglied.lycos.de") 
conn.request("GET", "/sethurx/Bilder/earth.gif") 
res = conn.getresponse() 
if res.reason == "OK": 
    f=open("C:/Temp/test.gif","wb")
    f.write(res.read())
    f.close()
conn.close()
Das würde dir sichern, dass nur gespeichert wird, wenn die Verbindung ok ist. Hab ich aus Dookie seinem Code in dem Thema hier genommen....
ASCII158
User
Beiträge: 80
Registriert: Samstag 28. September 2002, 15:40
Wohnort: München

Ahhh, mein Fehler war das "wb", ich hatte nur "w" da stehen...

Http hat schon gestimmt...

Danke!
mfg,

10011110
Antworten