FTP Upload und Upload überprüfen

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo, ich hab mir einen kleinen FTP Upload gebastelt, nun tu ich mir allerdings ein bisschen schwer zu überprüfen ob der Upload auch geklappt hat, den im Anschluss soll die Datei gelöscht werden. Auch fehlt mir noch ein bisschen Überprüfung ob der FTP Server verfügbar ist. Wenn man allerdings einfach die Meldungen des FTP abfangen könnte, wäre ja alles gelöst.

    also diese:
    150 Connection accepted
    226 Transfer OK

    Denke die Aufgabe ist nicht so schwer, aber irgendwie komm ich grade nicht weiter

    Einmal editiert, zuletzt von Kain (27. Juli 2014 um 09:36)

  • Doku lesen, das ich da nicht selber drauf kam, irgendwie unverständlich, aber dennoch danke das du dir die Zeit genommen hast mir so informativ mein Problem zu lösen.

    Die frage die sich mir nur eigentlich stellt ist eher: Da wenn jeder die Dokus die es so gibt gleich richtig versteht und auch die einzelnen Sachen schön kombiniert ... wozu gibt's dann eigentlich das Forum hier? Dann sollte es doch keine Fragen geben :bravo2:

    Nun ja, man hat gelegentlich Zeiten wo man einfach den Wald vor Bäumen nicht sieht und einem irgendwie auch die Doku nicht weiter hilft, aber ich sehe das dann hier mal als erledigt und suche mir an anderer Stelle Infos.


  • wozu gibt's dann eigentlich das Forum hier?

    Ganz einfach: Wenn man trotz Doku-Lesen (und evtl. weiter gehender Recherche) nicht weiter kommt und konkrete Fragen hat, man also gewillt ist, die Probleme zu verstehen und selbst lösen zu können, kommen Foren wie dieses ins Spiel ;)
    Wenn man ein Allgemeines Problem hat, man nicht gewillt ist, die Doku zu lesen oder sonstige Recherchetätigkeiten zu übernehmen und gerne eine fix-und-fertig-Lösung hat (ohne Aufwand) kann man einen Softwareentwickler beauftragen.

  • also Doku hab ich mir angeschaut, bekomme auch evtl. die Fehler zurück, aber eine Meldung zu einem gültigem Login oder eine erfolgreiche Datenübertragung ist nun mal kein Fehler.
    Und mal ehrlich, dein Text mit eingebundenem Link war mit Sicherheit mehr Arbeit als zu schreiben "Nach der Zeile einfach BEFEHL nutzen". Auch wenn es nicht zu glauben ist, es gibt sogar Leute die wirklich helfen wollen und nicht den Lehrer mit "Sie in dein Buch" spielen. Wenn das schwer zu glauben ist ... hier zb

    und zu "fix-und-fertig-Lösung" ich frage nicht wer mir ein Script schreibt das dies und jenes macht (und mir am besten per Mail zukommen lässt), ich frage nach einem (doch scheinbar) simplen Befehl

    und weil ich grade dabei bin, möchte ich doch auch mal auf deine Antwort eingehen ...

    Ganz einfach: ...


    schaun wir mal

    ... Wenn man trotz Doku-Lesen ...


    Hab ich gelesen, hab's versucht, nicht zufriedenstellen hinbekommen

    ... (und evtl. weiter gehender Recherche) nicht weiter kommt ...


    Tante Google befragt, gleiches Ergebnis

    ... und konkrete Fragen hat ...

    Wenn man allerdings einfach die Meldungen des FTP abfangen könnte, wäre ja alles gelöst.

    also diese:
    150 Connection accepted
    226 Transfer OK


    ... man also gewillt ist, die Probleme zu verstehen und selbst lösen zu können ...


    hmm, Problem ist das ich es nicht hin bekomme die Meldungen aus zu werten, selber lösen schlug fehlt (trotz Doku und Tante Google), darum zumindest versucht in einem Forum das sich damit beschäftigt Hilfe zu finden, es ging ja wie schon gesagt nicht darum "ich brauche eine fertige Auswertung" sondern nur "Meldungen abfangen", hätte ja sogar sein können das es bei der Übermittlung schon einen Parameter gibt der das macht :denker:


    ... kommen Foren wie dieses ins Spiel


    tja, und da ist der Punkt um den sich alles dreht, den genau so ist es scheinbar nicht

  • Ich entschuldige mich aufrichtig, dass ich helfen wollte :wallbash:

    Zitat

    also Doku hab ich mir angeschaut, bekomme auch evtl. die Fehler zurück, aber eine Meldung zu einem gültigem Login oder eine erfolgreiche Datenübertragung ist nun mal kein Fehler.


    Man werfe mal wirklich einen Blick in die Doku:

    Zitat

    >>> ftp.login() # user anonymous, passwd anonymous@
    '230 Login successful.'


    Das ist kein Fehler, sondern so ein Statuscode, den du haben wolltest. Aber vll hast du ja eine andere Doku gelesen als ich.
    Wo liegt also das Problem? An der Abfrage der Codes? Dann sag das doch einfach.

    Python
    from ftplib import FTP
    ftp = FTP('ftp.debian.org')    
    login = ftp.login()
    if login == '230 Login successful.':
    	print "login ok"
    	ftp.cwd('debian') 
    	ftp.retrlines('LIST')
    else:
    	print "login not ok"


    Ja, das Codebeispiel stammt aus der Doku und wurde lediglich um eine kleine if-Abfrage erweitert.
    Nein, ich werde dir deinen Code um die von dir gewünschten Statuscodes nicht erweitern, spätestens mit dem oben genannten Beispiel solltest du es auch selbst hinbekommen, auch wenn ich dir nicht helfe und nie geholfen habe :sleepy:

  • Alle auf dem falschen Fuß erwischt? Ich kann ehrlich gesagt diese Art in vielen Foren und co nicht mehr ab.
    Warum verhalten sich die Leute nicht einfach so wie Privat auch? Oder machst du das da genauso? Also wenn du mit jemand was zusammen schreibst und der andere mal fragt "Wie war den der Befehl der das macht?", kommt dann auch ein "Schau doch in die Doku!", also mal ehrlich, dann weis man doch woran man ist.
    Auch sollte man mal bedenken (nicht mein fall, aber dennoch möglich) das ein 10järiger dem sein English nun mal nicht so die wahre Pracht ist und Sonntags morgens lieber an seinem Pi schraubt als irgendwelche Shooter zu spielen, sich überwindet und nach Hilfe fragt und nur auf Doku verwiesen wird die er nicht lesen kann.
    Beispiele gibt es etliche, schade eigentlich.

    Mein Denkfehler scheint klar, ich suchte einen Befehl der mir die letzte Meldung gibt, das die Ausführung eines Befehls mir im grunde scheinbar auch die Antwort liefert ... hmm, hab ich echt nicht dran gedacht, na ja, jeder fängt wohl mal an.

    einen Timeout werde ich so wahrscheinlich nicht bekommen, aber das sollte über die Fehler zu machen sein.

    EDIT: Da ich es grade vergessen habe, ein ehrliches DANKE von meiner Seite dafür

    Einmal editiert, zuletzt von Kain (27. Juli 2014 um 11:41)

  • 1. Mündliche Absprachen im privaten Rahmen sind nicht schriflich und öffentlich. Daher ist hier Redundanz nicht problematisch (es sei denn, die gleiche Person fragt ständig das gleiche, dann antworte ich auch irgendwann nicht mehr). Wenn allerdings in einem Forum Dinge gefragt werden, für die woanders die Lösung steht und diese auch verlinkt wurde, sollte das ausreichen. Man stelle sich mal vor, jeder wäre zu faul nachzulesen, wie man etwas über Python in der Konsole ausgibt und es würden hier hunderte Threads entstehen bei denen die Antwort ein "print"-Befehl ist. Nicht sehr übersichtlich dann und auch nicht sehr sinnvoll.
    2. Wenn ein 10-Jähriger, der kein Englisch kann hier etwas fragt und einen Link auf die Doku erhält, kann er doch einfach schreiben, dass er kein Englisch kann. Dann wird demjenigen sicher weitergeholfen.
    3. Eine präzise Beschreibung deines Problems unter Einbeziehung der Erkenntnisse aus der Doku wäre sehr hilfreich gewesen. Du wolltest wissen, wie man die FTP-Meldungen erhält. Ich habe auf die Doku verwiesen, die das beschreibt. Du hast behauptet, dass in der Doku nur was von Fehlern, aber nichts von Meldungen steht. Ich habe den Code aus der Doku reingepastet (inkl. if-Abfrage) und plötzlich wars das. Hättest auch einfach fragen können, wie man den erhaltenen FTP-Code benutzen kann und nicht behaupten, dass man keinen erhält.
    4. Ja - jeder fängt mal an. Und genau dafür gibt es ja Dokus. Bei meinen ersten Gehversuchen mit Python habe ich diese schätzen gelernt. Gut - bin ich wohl eine Ausnahme. Heutzutage sind ja Foren der perfekte Ersatz für Software-Support. Zudem noch kostenlos, weil die Mitglieder einen Teil ihrer Freizeit opfern, um anderen zu helfen. Aber das ist ja egal, schließlich hat man eine Frage, die sofort und genau beantwortet werden muss.
    5. Ich gehe selten durch die Fußgängerzone und frage Leute nach der Lösung eines meiner Probleme. Auch verpflichte ich sie nicht, mir die Auskunft zu geben und reagiere beleidigt, wenn meine Frage nicht nach meinen Wünschen beantwortet wurde.
    6. Bitte!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!