Login mit Python und requests

  • Tach zusammen,


    Um mir die Sache mit den PNs etwas leichter zu machen, versuche ich gerade, das mit Python, requests und bs4 zu automatisieren. Ich scheitere schon am login ?(

    Kann mir da einer auf die Sprünge helfen?



    Danke!

    :wink:

  • PS: Ich bekomme ein <p class="error">Ihre Sitzung ist abgelaufen, bitte senden Sie das Formular erneut ab.</p> im ersten POST.

    Mittlerweile auch ein Captcha, verdammt :wallbash:

    :wink:

  • Die Post-Request-Methode ist nicht vollständig. Auf die Schnelle geht das hier:


    Gibt sicherlich eine elegantere Art den SECURITY_TOKEN zu parsen...

  • EDIT: - gelöscht weil Käse -


    Ich hatte mir das Repo geforked, konnte aber auf die Schnelle nicht debuggen, warum's nicht funktioniert. Bist du dir sicher, dass du mit deinem bisherigen Konstrukt eine Session zu stande bekommst und den HTML-Response von der Seite `converstaion-list/` mit der html5lib parsen kannst? Das Modul gehört übrigens noch importiert, sonst mosert der Interpreter.


    Mfg, sls

  • sls  

    Bist du dir sicher, dass du mit deinem bisherigen Konstrukt eine Session zu stande bekommst

    Ganz sicher. Ich habe jedes mal bevor ich gecommitet habe, alle PNs gelöscht und neu getestet. Auch eben nochmal getestet, frisch geclont und läuft..

    Das Modul gehört übrigens noch importiert, sonst mosert der Interpreter.

    Steht wo? Bei mir findet und importiert beutifulsoup das automatisch?!

    :wink:

  • Ganz sicher. Ich habe jedes mal bevor ich gecommitet habe, alle PNs gelöscht und neu getestet. Auch eben nochmal getestet, frisch geclont und läuft..

    No offense, jetzt kriegst du ja Feedback :)

    Code
    1. Steht wo? Bei mir findet und importiert beutifulsoup das automatisch?!

    Ach, mist. `pip3 install html5lib` lief bei mir nebenbei und hatte beim Code-Review übersehen dass es zu einer Fehlermeldung kam. Sorry.



    Wie auch immer, leider bekomme ich diesen Fehler hier:


  • Aha!

    Genau das bekomme ich, wenn ich als Username linusg und als Passwort irgendwas eingebe. Also letzteres nochmal Prüfen oder hardcoden.

    DAs gleiche auch bei ungültigem Usernamen.

    :wink: