Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Python Script wird wird nur teilweise ausgeführt

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Python Script wird wird nur teilweise ausgeführt

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
4 Beiträge 3 Kommentatoren 490 Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Christof.KacC Offline
    Christof.KacC Offline
    Christof.Kac
    schrieb am zuletzt editiert von Christof.Kac
    #1

    Hi,
    ich nutze ioBroker erfolgreich in einem Dockercontainer und wollte jetzt ein Pythonskript laufen lassen, um mich auf meiner DynDns Seite afraid.org regelmäßg einzuloggen (da sonst der Account gesperrt wird).
    Skript dafür habe hier gefunden: Github Link
    In der shell von ioBroker funktioniert das super.
    Gekapselt habe ich das alles in einem Skript autologin.sh:

    python /opt/iobroker/autologin/afraid-autologin/autologin.py --browser phantomjs > /tmp/output_afraid_autologin
    

    Output bei Aufruf des Scriptes in der Shell:

    2019-11-17 12:34:17,430 >>> DEBUG: afraid-autologin startup
    2019-11-17 12:34:17,433 >>> DEBUG: init browser
    2019-11-17 12:34:20,668 >>> DEBUG: navigating to login page
    2019-11-17 12:34:24,459 >>> DEBUG: submit login form
    2019-11-17 12:34:29,646 >>> DEBUG: extending account if dormant
    2019-11-17 12:34:30,481 >>> DEBUG: [<selenium.webdriver.remote.webelement.WebElement (session="311bea00-092e-11ea-9e1f-b5ec6b3fdb3e", element=":wdc:1573990470479")>]
    Trace
    2019-11-17 12:34:34,407 >>> INFO: login sucessful
    

    Output, wenn ich es mit dem exec-Befehl über ein Skript laufen lasse (exec('/opt/iobroker/autologin/afraid-autologin/autologin.sh');):

    2019-11-17 12:48:00,217 >>> DEBUG: afraid-autologin startup
    2019-11-17 12:48:00,220 >>> DEBUG: init browser
    

    Warum auch immer scheint das Skript relativ flott abgebrochen zu werden.

    Hat jemand eine Idee, was ich falsch mache?
    Danke
    Christof

    ioBroker admin 6 mit cloud in einer VM mit CCU2, Rademacher Homepilot, FS20, Homematic, Google Home

    foxriver76F AlCalzoneA 2 Antworten Letzte Antwort
    0
    • Christof.KacC Christof.Kac

      Hi,
      ich nutze ioBroker erfolgreich in einem Dockercontainer und wollte jetzt ein Pythonskript laufen lassen, um mich auf meiner DynDns Seite afraid.org regelmäßg einzuloggen (da sonst der Account gesperrt wird).
      Skript dafür habe hier gefunden: Github Link
      In der shell von ioBroker funktioniert das super.
      Gekapselt habe ich das alles in einem Skript autologin.sh:

      python /opt/iobroker/autologin/afraid-autologin/autologin.py --browser phantomjs > /tmp/output_afraid_autologin
      

      Output bei Aufruf des Scriptes in der Shell:

      2019-11-17 12:34:17,430 >>> DEBUG: afraid-autologin startup
      2019-11-17 12:34:17,433 >>> DEBUG: init browser
      2019-11-17 12:34:20,668 >>> DEBUG: navigating to login page
      2019-11-17 12:34:24,459 >>> DEBUG: submit login form
      2019-11-17 12:34:29,646 >>> DEBUG: extending account if dormant
      2019-11-17 12:34:30,481 >>> DEBUG: [<selenium.webdriver.remote.webelement.WebElement (session="311bea00-092e-11ea-9e1f-b5ec6b3fdb3e", element=":wdc:1573990470479")>]
      Trace
      2019-11-17 12:34:34,407 >>> INFO: login sucessful
      

      Output, wenn ich es mit dem exec-Befehl über ein Skript laufen lasse (exec('/opt/iobroker/autologin/afraid-autologin/autologin.sh');):

      2019-11-17 12:48:00,217 >>> DEBUG: afraid-autologin startup
      2019-11-17 12:48:00,220 >>> DEBUG: init browser
      

      Warum auch immer scheint das Skript relativ flott abgebrochen zu werden.

      Hat jemand eine Idee, was ich falsch mache?
      Danke
      Christof

      foxriver76F Offline
      foxriver76F Offline
      foxriver76
      Developer
      schrieb am zuletzt editiert von foxriver76
      #2

      @Christof-Kac Warum unterscheidet sich dein Aufruf über exec und CLI. z. B. hast du auf der CLI phantomjs als Browser spezifiziert.
      Entsprechend wird hier ein anderer Zweig gewählt (https://github.com/inderpreet99/afraid-autologin/blob/master/autologin.py#L64) als über dein Exec Aufruf, und das Logging danach kommt auch nicht mehr, da was net geklappt hat. Er versucht wohl ansonsten Firefox zu nehmen. Phatnomjs ist ein Headless Browser, während FF dies nur ist, wenn er explizit in diesen Modus versetzt wird. Villt ist auch gar kein FF installiert. However, spezifiziere wieder Phantomjs und es sollte klappen.

      Edit: habe es etwas missverstanden. Warum der Umweg über das Shell Skript? Du kannst doch exec('python /opt/iobroker/autologin/afraid-autologin/autologin.py --browser phantomjs > /tmp/output_afraid_autologin') direkt aus ioBroker abfeuern. Wenn das noch unterschiedliche Ergebnisse liefert als der direkte Aufruf via CLI, werden es wohl Rechte-Geschichten sein.

      Videotutorials & mehr

      Hier könnt ihr mich unterstützen.

      1 Antwort Letzte Antwort
      0
      • Christof.KacC Christof.Kac

        Hi,
        ich nutze ioBroker erfolgreich in einem Dockercontainer und wollte jetzt ein Pythonskript laufen lassen, um mich auf meiner DynDns Seite afraid.org regelmäßg einzuloggen (da sonst der Account gesperrt wird).
        Skript dafür habe hier gefunden: Github Link
        In der shell von ioBroker funktioniert das super.
        Gekapselt habe ich das alles in einem Skript autologin.sh:

        python /opt/iobroker/autologin/afraid-autologin/autologin.py --browser phantomjs > /tmp/output_afraid_autologin
        

        Output bei Aufruf des Scriptes in der Shell:

        2019-11-17 12:34:17,430 >>> DEBUG: afraid-autologin startup
        2019-11-17 12:34:17,433 >>> DEBUG: init browser
        2019-11-17 12:34:20,668 >>> DEBUG: navigating to login page
        2019-11-17 12:34:24,459 >>> DEBUG: submit login form
        2019-11-17 12:34:29,646 >>> DEBUG: extending account if dormant
        2019-11-17 12:34:30,481 >>> DEBUG: [<selenium.webdriver.remote.webelement.WebElement (session="311bea00-092e-11ea-9e1f-b5ec6b3fdb3e", element=":wdc:1573990470479")>]
        Trace
        2019-11-17 12:34:34,407 >>> INFO: login sucessful
        

        Output, wenn ich es mit dem exec-Befehl über ein Skript laufen lasse (exec('/opt/iobroker/autologin/afraid-autologin/autologin.sh');):

        2019-11-17 12:48:00,217 >>> DEBUG: afraid-autologin startup
        2019-11-17 12:48:00,220 >>> DEBUG: init browser
        

        Warum auch immer scheint das Skript relativ flott abgebrochen zu werden.

        Hat jemand eine Idee, was ich falsch mache?
        Danke
        Christof

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von
        #3

        @Christof-Kac sagte in Python Script wird wird nur teilweise ausgeführt:

        Warum auch immer scheint das Skript relativ flott abgebrochen zu werden.

        Sofern die Befehlszeile richtig ist, nutze den Callback von exec. exec ist asynchron, d.h. der restliche Code danach wird sofort ausgeführt. Nur im Callback kannst du sicher sein, dass der Befehl ausgeführt wurde (mit oder ohne Fehler).

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        foxriver76F 1 Antwort Letzte Antwort
        0
        • AlCalzoneA AlCalzone

          @Christof-Kac sagte in Python Script wird wird nur teilweise ausgeführt:

          Warum auch immer scheint das Skript relativ flott abgebrochen zu werden.

          Sofern die Befehlszeile richtig ist, nutze den Callback von exec. exec ist asynchron, d.h. der restliche Code danach wird sofort ausgeführt. Nur im Callback kannst du sicher sein, dass der Befehl ausgeführt wurde (mit oder ohne Fehler).

          foxriver76F Offline
          foxriver76F Offline
          foxriver76
          Developer
          schrieb am zuletzt editiert von foxriver76
          #4

          @AlCalzone Er lässt es sich ja in eine Datei loggen. Btw. @Christof-Kac leite doch mal stderr mit in die Datei, wird hilfreich sein. Also exec('python /opt/iobroker/autologin/afraid-autologin/autologin.py --browser phantomjs &> /tmp/output_afraid_autologin')

          Videotutorials & mehr

          Hier könnt ihr mich unterstützen.

          1 Antwort Letzte Antwort
          0
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          781

          Online

          32.6k

          Benutzer

          82.3k

          Themen

          1.3m

          Beiträge
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
          ioBroker Community 2014-2025
          logo
          • Anmelden

          • Du hast noch kein Konto? Registrieren

          • Anmelden oder registrieren, um zu suchen
          • Erster Beitrag
            Letzter Beitrag
          0
          • Home
          • Aktuell
          • Tags
          • Ungelesen 0
          • Kategorien
          • Unreplied
          • Beliebt
          • GitHub
          • Docu
          • Hilfe