Forum: PC-Programmierung Python Netzwerk Share zugreifen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Rolli (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich möchte mit einem Python Skript ein Logfile auf einer 
Netzwerkfreigabe erstellen und dieses laufend aktualisieren:
\\192.168.0.13\share\logs\python.txt
Die besagte Share erforder Benutzernamen und Passwort.
wie stelle ich sowas an?

von nocheinGast (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wenn die IP-Adresse und die Anmeldedaten eh fix sind, einfach mit dem 
Explorer ein Netzlaufwerk hinzufügen und die Anmeldedaten da hinterlegen 
und "Beim Anmelden wiederherstellen" anhaken? Und dann das Logfile ganz 
normal z. B. in Z:\\share\logs\python.txt anlegen?

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Dagegen spricht, daß dann auch alles andere, was auf dem Rechner läuft, 
Zugriff auf die Freigabe bekommt.

Obendrein sind UNC-Pfade kein Hexenwerk, Laufwerksbuchstaben sind 
überflüssig.

FÜr das Verbinden mit einer SMB-Freigabe und gleichzeitiger 
Authentifizierung mit Benutzernamen/Passwort kann die Win32-API-Funktion 
WNetAddConnection2 verwendet werden:

https://docs.microsoft.com/en-us/windows/desktop/api/winnetwk/nf-winnetwk-wnetaddconnection2a

Korrespondierend ist die Win32-API-Funktion WNetCancelConnection2 zu 
verwenden, um die Verbindung wieder zu trennen:

https://docs.microsoft.com/en-us/windows/desktop/api/winnetwk/nf-winnetwk-wnetcancelconnection2a


Es wird sicherlich auch einen Weg geben, Win32-API-Funktionen aus Python 
heraus zu verwenden.

von Walter T. (nicolas)


Bewertung
0 lesenswert
nicht lesenswert
Rufus Τ. F. schrieb:
> Es wird sicherlich auch einen Weg geben, Win32-API-Funktionen aus Python
> heraus zu verwenden.

Ja, aber es ist ein Krampf.

Für FTP gibt es feine Libraries, für SMB vermutlich auch - aber da kann 
ich nicht aus eigener Erfahrung sprechen.

von googleisyourfriend (Gast)


Bewertung
0 lesenswert
nicht lesenswert

von Thomas S. (doschi_)


Bewertung
0 lesenswert
nicht lesenswert
Walter T. schrieb:
> Rufus Τ. F. schrieb:
>> Es wird sicherlich auch einen Weg geben, Win32-API-Funktionen aus Python
>> heraus zu verwenden.
>
> Ja, aber es ist ein Krampf.
>
> Für FTP gibt es feine Libraries, für SMB vermutlich auch - aber da kann
> ich nicht aus eigener Erfahrung sprechen.

evtl. pysmb?
https://pypi.org/project/pysmb/
https://pysmb.readthedocs.io/en/latest/#using-pysmb

von DPA (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Rolli schrieb:
> ich möchte mit einem Python Skript ein Logfile auf einer
> Netzwerkfreigabe erstellen und dieses laufend aktualisieren:

Wisst ihr, es gibt da dafür so einen Standard namens Syslog. Auf dem 
Server richtet man sich einen Syslog Server ein, und der Client sendet 
laufend die zu loggenden Nachrichten. Unter Linux gab es das schon 
immer. Aber ist ja Windows...

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Walter T. schrieb:
> Ja, aber es ist ein Krampf.

Dann ist vielleicht Python nicht das geeignetste Werkzeug. Wenn bereits 
der Gebrauch der betriebssystemeigenen API ein Krampf ist ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.