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

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Puppeteer: Screenshots PhantomJS Alternative

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Puppeteer: Screenshots PhantomJS Alternative

Geplant Angeheftet Gesperrt Verschoben Tester
screenshotsheadlessbrowserpuppeteerphantomjsscreenshotwebsite
245 Beiträge 23 Kommentatoren 42.9k Aufrufe 17 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.
  • B bimmi

    Danke für den Adapter!

    Gibt es eine Möglichkeit die Qualität des generierten jpg einzustellen?

    arteckA Offline
    arteckA Offline
    arteck
    Developer Most Active
    schrieb am zuletzt editiert von
    #195

    @bimmi RTFM https://github.com/foxriver76/ioBroker.puppeteer/blob/main/README.md

    zigbee hab ich, zwave auch, nuc's genauso und HA auch

    B 1 Antwort Letzte Antwort
    0
    • arteckA arteck

      @bimmi RTFM https://github.com/foxriver76/ioBroker.puppeteer/blob/main/README.md

      B Offline
      B Offline
      bimmi
      schrieb am zuletzt editiert von
      #196

      @arteck vielen Dank für das manual! Das kenne ich bereits. Mir ging es hier in dem Beitrag rund um den Adapter für iobroker darum, ob man es ermöglichen kann, den Parameter mit quality zusätzlich zur Clip höhe/breite usw mit übertragen kann.

      Das ist ja nicht möglich, da ja nur die wichtigsten Parameter eingetragen werden können.

      Gruß Bimmi

      iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

      foxriver76F 1 Antwort Letzte Antwort
      0
      • B bimmi

        @arteck vielen Dank für das manual! Das kenne ich bereits. Mir ging es hier in dem Beitrag rund um den Adapter für iobroker darum, ob man es ermöglichen kann, den Parameter mit quality zusätzlich zur Clip höhe/breite usw mit übertragen kann.

        Das ist ja nicht möglich, da ja nur die wichtigsten Parameter eingetragen werden können.

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

        @bimmi Wenn du sendTo nutzt kannst du wie in der ReadMe steht, alle Optionen die in der Puppeteer API verfügbar sind mitgeben.

        Videotutorials & mehr

        Hier könnt ihr mich unterstützen.

        B 1 Antwort Letzte Antwort
        0
        • foxriver76F foxriver76

          @bimmi Wenn du sendTo nutzt kannst du wie in der ReadMe steht, alle Optionen die in der Puppeteer API verfügbar sind mitgeben.

          B Offline
          B Offline
          bimmi
          schrieb am zuletzt editiert von
          #198

          @foxriver76 ok. Danke. Jetzt verstehe ich.

          Geht das auch mit blockly? Sento gibt es ja keine Option für puppeteer... 😬

          Gruß Bimmi

          iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

          foxriver76F 1 Antwort Letzte Antwort
          0
          • B bimmi

            @foxriver76 ok. Danke. Jetzt verstehe ich.

            Geht das auch mit blockly? Sento gibt es ja keine Option für puppeteer... 😬

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

            @bimmi Ich habe keine Ahnung von Blockly, im Zweifel nimmst du einen JavaScript Block und adjustierst das Beispiel aus der ReadMe. Wobei da die ganzen ? raus müssen, die zeigen nur auf, dass eine Property optional ist.

            Videotutorials & mehr

            Hier könnt ihr mich unterstützen.

            B 1 Antwort Letzte Antwort
            1
            • foxriver76F foxriver76

              @bimmi Ich habe keine Ahnung von Blockly, im Zweifel nimmst du einen JavaScript Block und adjustierst das Beispiel aus der ReadMe. Wobei da die ganzen ? raus müssen, die zeigen nur auf, dass eine Property optional ist.

              B Offline
              B Offline
              bimmi
              schrieb am zuletzt editiert von
              #200

              @foxriver76 danke! Ich glaube ich hab es gefunden 😂 man lernt nie aus!

              Screenshot_2023-07-12-11-03-55-682_com.chrome.beta.jpg

              Gruß Bimmi

              iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

              B 1 Antwort Letzte Antwort
              0
              • B bimmi

                @foxriver76 danke! Ich glaube ich hab es gefunden 😂 man lernt nie aus!

                Screenshot_2023-07-12-11-03-55-682_com.chrome.beta.jpg

                B Offline
                B Offline
                bimmi
                schrieb am zuletzt editiert von bimmi
                #201

                vielleicht nochmal an die, die bereits ein blockly erstellt hatten...

                Sorry, ich blick da bei dem SendTo nicht durch :(

                So sieht mein Blockly aus:

                a929ba19-55d3-44a1-977f-0676a58b3ade-image.png

                diesen Fehler bekomme ich:

                bdd0ef66-912a-418e-a6a9-addeee4d56c4-image.png

                
                javascript.0
                2023-07-12 16:21:54.618	error	script.js.EPS.Grundwasser: {'error':{}}
                
                puppeteer.0
                2023-07-12 16:21:54.615	error	Could not take screenshot of "http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser": Expected options.clip.x to be a number but found undefined
                

                Der Fehler sagt eigentlich, dass es mit dem clip width und height ein Problem gibt. Der Datenpunkt ist eine "number".

                Jemand, der das schon in Blockly getan hat vielleicht einen Tipp für mich? :duck:

                Auf Debug kommt folgende Message:

                puppeteer.0
                2023-07-12 17:06:02.091	debug	Message: {"command":"screenshot","message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","waitOption":{"waitForTimeout":5000},"clip":"{width:296height:128}","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100},"from":"system.adapter.javascript.0","callback":{"message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","waitOption":{"waitForTimeout":5000},"clip":"{width:296height:128}","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100},"id":14,"ack":false,"time":1689174362088},"_id":40259716}
                

                Da fehlt auch m.M. noch ein Trennzeichen wenn er das aus den Textfeldern zusammenstellt...

                Gruß Bimmi

                iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                B 1 Antwort Letzte Antwort
                0
                • B bimmi

                  vielleicht nochmal an die, die bereits ein blockly erstellt hatten...

                  Sorry, ich blick da bei dem SendTo nicht durch :(

                  So sieht mein Blockly aus:

                  a929ba19-55d3-44a1-977f-0676a58b3ade-image.png

                  diesen Fehler bekomme ich:

                  bdd0ef66-912a-418e-a6a9-addeee4d56c4-image.png

                  
                  javascript.0
                  2023-07-12 16:21:54.618	error	script.js.EPS.Grundwasser: {'error':{}}
                  
                  puppeteer.0
                  2023-07-12 16:21:54.615	error	Could not take screenshot of "http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser": Expected options.clip.x to be a number but found undefined
                  

                  Der Fehler sagt eigentlich, dass es mit dem clip width und height ein Problem gibt. Der Datenpunkt ist eine "number".

                  Jemand, der das schon in Blockly getan hat vielleicht einen Tipp für mich? :duck:

                  Auf Debug kommt folgende Message:

                  puppeteer.0
                  2023-07-12 17:06:02.091	debug	Message: {"command":"screenshot","message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","waitOption":{"waitForTimeout":5000},"clip":"{width:296height:128}","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100},"from":"system.adapter.javascript.0","callback":{"message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","waitOption":{"waitForTimeout":5000},"clip":"{width:296height:128}","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100},"id":14,"ack":false,"time":1689174362088},"_id":40259716}
                  

                  Da fehlt auch m.M. noch ein Trennzeichen wenn er das aus den Textfeldern zusammenstellt...

                  B Offline
                  B Offline
                  bimmi
                  schrieb am zuletzt editiert von
                  #202

                  ich bin inzwischen etwas weiter gekommen:

                  Jetzt bekomme ich zwar keine Fehlermeldung, jedoch schneider mir puppeteer den Screenshot nicht zu.

                  puppeteer.0
                  2023-07-12 17:57:40.099	debug	Message: {"command":"screenshot","message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100,"waitOptions":{"waitForTimeout":2000},"clip.width":296,"clip.height":128,"clip.x":0,"clip.y":0},"from":"system.adapter.javascript.0","callback":{"message":{"url":"http://192.168.1.10:8082/vis/index.html?EPS#Grundwasser","path":"/var/www/html/eps-display/Grundwasser.jpg","quality":100,"waitOptions":{"waitForTimeout":2000},"clip.width":296,"clip.height":128,"clip.x":0,"clip.y":0},"id":37,"ack":false,"time":1689177460098},"_id":40259743}
                  

                  fd1cd368-c2cb-4a4b-9506-c6206e70f6a3-image.png

                  Gruß Bimmi

                  iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                  1 Antwort Letzte Antwort
                  0
                  • H horphi

                    Habs gefunden.
                    Einfach den Haken bei Ergebniss setzen und dann kann ich das Result abfragen....;-)
                    ec282ada-bcc2-429d-a02d-b579c7d8143f-grafik.png

                    B Offline
                    B Offline
                    bimmi
                    schrieb am zuletzt editiert von
                    #203

                    @horphi sagte in Puppeteer: Screenshots PhantomJS Alternative:

                    Habs gefunden.
                    Einfach den Haken bei Ergebniss setzen und dann kann ich das Result abfragen....;-)
                    ec282ada-bcc2-429d-a02d-b579c7d8143f-grafik.png

                    vielleicht könnte ich mir das blockly mal ansehen. ich bekomme diese Blöcke absolut nicht hin :( ich denke das ist genau das was ich suche nur mit dem clip.height und clip.width.

                    Gruß Bimmi

                    iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                    1 Antwort Letzte Antwort
                    0
                    • O Offline
                      O Offline
                      oxident
                      schrieb am zuletzt editiert von
                      #204

                      Hättet ihr eine Idee, wie ich das Ergebnis (also den Screenshot) per VIS zur Verfügung stellen könnte?
                      Nutze Redis ... daher finde ich die erzeugte Datei leider nirgends im FS.

                      B 1 Antwort Letzte Antwort
                      0
                      • O oxident

                        Hättet ihr eine Idee, wie ich das Ergebnis (also den Screenshot) per VIS zur Verfügung stellen könnte?
                        Nutze Redis ... daher finde ich die erzeugte Datei leider nirgends im FS.

                        B Offline
                        B Offline
                        bimmi
                        schrieb am zuletzt editiert von
                        #205

                        @oxident ich habe mir einen port vom webserver geöffnet in dem lokal die screenshots abgelegt werden. auf diese greife ich dann über den eps ap zu!

                        Gruß Bimmi

                        iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                        1 Antwort Letzte Antwort
                        1
                        • foxriver76F foxriver76
                          Aktuelle Test Version 0.1.0
                          Veröffentlichungsdatum 16.05.2021
                          Github Link https://github.com/foxriver76/ioBroker.puppeteer

                          Hallo zusammen,

                          ich habe vor kurzem einen neuen Adapter geschrieben, der ebenso wie PhantomJS Screenshots von diversen Webseiten machen kann. Hauptmotivation war, dass PhantomJS (nicht Adapter sondern Browser selbst) nicht mehr weiterentwickelt wird. Puppeteer stellt hier eine super Alternative dar um Chrome Browser zu steuern.

                          Der Adapter bringt einen Browser selbst mit, somit muss sich um keine separate Installation gekümmert werden. Bislang arbeitet der Adapter ähnlich wie der PhantomJS Adapter, nur mit States und Messages. Er hat demnach keine Admin UI.

                          Eine Anleitung findet ihr in der README: https://github.com/foxriver76/ioBroker.puppeteer#how-to

                          Mittels Messages habe ich das ganze sehr offen gehalten, so dass jegliche Optionen direkt an die Puppeteer API weitergereicht werden und ihr nicht durch den Adapter limitiert werdet. Siehe https://github.com/foxriver76/ioBroker.puppeteer#messages

                          Der Adapter sollte spätestens morgen im Latest Repository verfügbar sein, bzw. ab sofort per GitHub.

                          Ich freue mich auf Feedback.

                          beste Grüße

                          fox

                          R Offline
                          R Offline
                          Revobobo
                          schrieb am zuletzt editiert von Revobobo
                          #206

                          Moin Zusammen,

                          Ich bekomme einen Fehler wenn ich die Screenshots innerhalb iobroker speichern will.

                          puppeteer.0
                          	2023-07-29 10:46:57.192	error	Could not take screenshot of "http://192.168.178.28:8086/vis/index.html?ePaperDisplay#Display01": Screenshots cannot be stored inside the ioBroker storage
                          
                          Screenshots cannot be stored inside the ioBroker storage
                          

                          Hier zu speichern ist kein Problem - aber dann bekomme ich das Bild nicht in die VIS.

                          /opt/iobroker/Screenshot
                          

                          Infos zum System:

                          • ioBroker in einem Container unter Proxmox
                          • Node.js v18.16.1
                          • NPM 9.5.1

                          Hat jemand einen Tip für mich wie ich die Screenshots innerhalb ioBroker speichern kann?

                          Thanx und Gruß
                          Revo

                          -----------------------------ERLEDIGT-----------------------------
                          Für meine Anwendung benötige ich den Zugriff nicht mehr.

                          DANKE - Revo

                          1 Antwort Letzte Antwort
                          1
                          • ? Offline
                            ? Offline
                            Ein ehemaliger Benutzer
                            schrieb am zuletzt editiert von
                            #207

                            Hallo zusammen,

                            aktuell erstelle ich einige mit Screenshots meiner Vis mit PhantomJS und sende diese per cur/ftp an eine Webseite. Ich verwende dazu Blockly. Das Ganze funktioniert bisher super, aber Mangels weitern Support von PhantomJS möchte ich gerne umstellen.
                            Ich möchte dies nun auf puppeteer umstellen komme aber nicht weiter. Evtl kann mir einer von Euch sagen wo mein Fehler liegt.
                            Screenshot 2023-08-28 135936.png

                            <xml xmlns="https://developers.google.com/blockly/xml">
                              <block type="schedule" id="G^UnO=d-{}^C(.H]m@Pd" x="113" y="-112">
                                <field name="SCHEDULE">* * * * *</field>
                                <statement name="STATEMENT">
                                  <block type="sendto_custom" id="wY=A{nWdIj;FEV=*X4#X">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="url,filename,clipWidth,ClipHeight,renderTime" with_statement="false"></mutation>
                                    <field name="INSTANCE">puppeteer.0</field>
                                    <field name="COMMAND">screenshot</field>
                                    <field name="LOG"></field>
                                    <field name="WITH_STATEMENT">FALSE</field>
                                    <value name="ARG0">
                                      <shadow type="text" id="3^rBcN9S-$oUq0PzLkT~">
                                        <field name="TEXT">http://10.11.207.203:8082/vis/index.html#Wetter</field>
                                      </shadow>
                                    </value>
                                    <value name="ARG1">
                                      <shadow type="text" id="AkklyNo!{[;K(,)98%zL">
                                        <field name="TEXT">/opt/iobroker/phantomcache/AktuellePT.png</field>
                                      </shadow>
                                    </value>
                                    <value name="ARG2">
                                      <shadow type="text" id="CWazP7X~7hw+m@(E7xy^">
                                        <field name="TEXT">1365</field>
                                      </shadow>
                                    </value>
                                    <value name="ARG3">
                                      <shadow type="text" id="Ze9N;z7%z,z}#YDFXFyB">
                                        <field name="TEXT">470</field>
                                      </shadow>
                                    </value>
                                    <value name="ARG4">
                                      <shadow type="text" id="5}},FP~XC/9(Op1J0@al">
                                        <field name="TEXT">10000</field>
                                      </shadow>
                                    </value>
                                    <next>
                                      <block type="exec" id="--46R`0IC6H{T,Q5Q_+n">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                        <field name="WITH_STATEMENT">FALSE</field>
                                        <field name="LOG"></field>
                                        <value name="COMMAND">
                                          <shadow type="text" id="?]Ggby@,5iW4:H;VT]S[">
                                            <field name="TEXT">curl -T /opt/iobroker/phantomcache/AktuellePT.png ftp://eine-seite-imweb.de/httpdocs/wetter/ --user user:pass</field>
                                          </shadow>
                                        </value>
                                      </block>
                                    </next>
                                  </block>
                                </statement>
                              </block>
                            </xml>
                            
                            liv-in-skyL 2 Antworten Letzte Antwort
                            0
                            • ? Ein ehemaliger Benutzer

                              Hallo zusammen,

                              aktuell erstelle ich einige mit Screenshots meiner Vis mit PhantomJS und sende diese per cur/ftp an eine Webseite. Ich verwende dazu Blockly. Das Ganze funktioniert bisher super, aber Mangels weitern Support von PhantomJS möchte ich gerne umstellen.
                              Ich möchte dies nun auf puppeteer umstellen komme aber nicht weiter. Evtl kann mir einer von Euch sagen wo mein Fehler liegt.
                              Screenshot 2023-08-28 135936.png

                              <xml xmlns="https://developers.google.com/blockly/xml">
                                <block type="schedule" id="G^UnO=d-{}^C(.H]m@Pd" x="113" y="-112">
                                  <field name="SCHEDULE">* * * * *</field>
                                  <statement name="STATEMENT">
                                    <block type="sendto_custom" id="wY=A{nWdIj;FEV=*X4#X">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="url,filename,clipWidth,ClipHeight,renderTime" with_statement="false"></mutation>
                                      <field name="INSTANCE">puppeteer.0</field>
                                      <field name="COMMAND">screenshot</field>
                                      <field name="LOG"></field>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <value name="ARG0">
                                        <shadow type="text" id="3^rBcN9S-$oUq0PzLkT~">
                                          <field name="TEXT">http://10.11.207.203:8082/vis/index.html#Wetter</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG1">
                                        <shadow type="text" id="AkklyNo!{[;K(,)98%zL">
                                          <field name="TEXT">/opt/iobroker/phantomcache/AktuellePT.png</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG2">
                                        <shadow type="text" id="CWazP7X~7hw+m@(E7xy^">
                                          <field name="TEXT">1365</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG3">
                                        <shadow type="text" id="Ze9N;z7%z,z}#YDFXFyB">
                                          <field name="TEXT">470</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG4">
                                        <shadow type="text" id="5}},FP~XC/9(Op1J0@al">
                                          <field name="TEXT">10000</field>
                                        </shadow>
                                      </value>
                                      <next>
                                        <block type="exec" id="--46R`0IC6H{T,Q5Q_+n">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                          <field name="WITH_STATEMENT">FALSE</field>
                                          <field name="LOG"></field>
                                          <value name="COMMAND">
                                            <shadow type="text" id="?]Ggby@,5iW4:H;VT]S[">
                                              <field name="TEXT">curl -T /opt/iobroker/phantomcache/AktuellePT.png ftp://eine-seite-imweb.de/httpdocs/wetter/ --user user:pass</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              
                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #208

                              @je-vi
                              versuch:
                              lege mal den exec block in einen timeout größer 10000

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              1 Antwort Letzte Antwort
                              0
                              • ? Ein ehemaliger Benutzer

                                Hallo zusammen,

                                aktuell erstelle ich einige mit Screenshots meiner Vis mit PhantomJS und sende diese per cur/ftp an eine Webseite. Ich verwende dazu Blockly. Das Ganze funktioniert bisher super, aber Mangels weitern Support von PhantomJS möchte ich gerne umstellen.
                                Ich möchte dies nun auf puppeteer umstellen komme aber nicht weiter. Evtl kann mir einer von Euch sagen wo mein Fehler liegt.
                                Screenshot 2023-08-28 135936.png

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                  <block type="schedule" id="G^UnO=d-{}^C(.H]m@Pd" x="113" y="-112">
                                    <field name="SCHEDULE">* * * * *</field>
                                    <statement name="STATEMENT">
                                      <block type="sendto_custom" id="wY=A{nWdIj;FEV=*X4#X">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="url,filename,clipWidth,ClipHeight,renderTime" with_statement="false"></mutation>
                                        <field name="INSTANCE">puppeteer.0</field>
                                        <field name="COMMAND">screenshot</field>
                                        <field name="LOG"></field>
                                        <field name="WITH_STATEMENT">FALSE</field>
                                        <value name="ARG0">
                                          <shadow type="text" id="3^rBcN9S-$oUq0PzLkT~">
                                            <field name="TEXT">http://10.11.207.203:8082/vis/index.html#Wetter</field>
                                          </shadow>
                                        </value>
                                        <value name="ARG1">
                                          <shadow type="text" id="AkklyNo!{[;K(,)98%zL">
                                            <field name="TEXT">/opt/iobroker/phantomcache/AktuellePT.png</field>
                                          </shadow>
                                        </value>
                                        <value name="ARG2">
                                          <shadow type="text" id="CWazP7X~7hw+m@(E7xy^">
                                            <field name="TEXT">1365</field>
                                          </shadow>
                                        </value>
                                        <value name="ARG3">
                                          <shadow type="text" id="Ze9N;z7%z,z}#YDFXFyB">
                                            <field name="TEXT">470</field>
                                          </shadow>
                                        </value>
                                        <value name="ARG4">
                                          <shadow type="text" id="5}},FP~XC/9(Op1J0@al">
                                            <field name="TEXT">10000</field>
                                          </shadow>
                                        </value>
                                        <next>
                                          <block type="exec" id="--46R`0IC6H{T,Q5Q_+n">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                            <field name="WITH_STATEMENT">FALSE</field>
                                            <field name="LOG"></field>
                                            <value name="COMMAND">
                                              <shadow type="text" id="?]Ggby@,5iW4:H;VT]S[">
                                                <field name="TEXT">curl -T /opt/iobroker/phantomcache/AktuellePT.png ftp://eine-seite-imweb.de/httpdocs/wetter/ --user user:pass</field>
                                              </shadow>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </xml>
                                
                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von liv-in-sky
                                #209

                                @je-vi

                                und was geht eigentlich nicht - das erzeugen des bildes oder das versenden des bildes

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                ? 1 Antwort Letzte Antwort
                                0
                                • liv-in-skyL liv-in-sky

                                  @je-vi

                                  und was geht eigentlich nicht - das erzeugen des bildes oder das versenden des bildes

                                  ? Offline
                                  ? Offline
                                  Ein ehemaliger Benutzer
                                  schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                                  #210

                                  @liv-in-sky said in Puppeteer: Screenshots PhantomJS Alternative:

                                  @je-vi

                                  und was geht eigentlich nicht - das erzeugen des bildes oder das versenden des bildes

                                  @liv-in-sky
                                  Hallo,
                                  schon das Erstellen schlägt fehl. Im Log kann ich auch nichts sehen.

                                  puppeteer.0
                                  8301	2023-08-28 16:01:00.005	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388316}
                                  
                                  puppeteer.0
                                  8301	2023-08-28 16:00:00.004	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388307}
                                  
                                  puppeteer.0
                                  8301	2023-08-28 15:59:46.321	info	Ready to take screenshots
                                  

                                  Setze ich die Werte direkt unter den Objekten des Adapters wird der Screenshot geschrieben.
                                  Screenshot 2023-08-28 161744.png
                                  Das Problem liegt also an meinem Blockly

                                  liv-in-skyL 2 Antworten Letzte Antwort
                                  0
                                  • ? Ein ehemaliger Benutzer

                                    @liv-in-sky said in Puppeteer: Screenshots PhantomJS Alternative:

                                    @je-vi

                                    und was geht eigentlich nicht - das erzeugen des bildes oder das versenden des bildes

                                    @liv-in-sky
                                    Hallo,
                                    schon das Erstellen schlägt fehl. Im Log kann ich auch nichts sehen.

                                    puppeteer.0
                                    8301	2023-08-28 16:01:00.005	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388316}
                                    
                                    puppeteer.0
                                    8301	2023-08-28 16:00:00.004	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388307}
                                    
                                    puppeteer.0
                                    8301	2023-08-28 15:59:46.321	info	Ready to take screenshots
                                    

                                    Setze ich die Werte direkt unter den Objekten des Adapters wird der Screenshot geschrieben.
                                    Screenshot 2023-08-28 161744.png
                                    Das Problem liegt also an meinem Blockly

                                    liv-in-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    schrieb am zuletzt editiert von
                                    #211

                                    @je-vi

                                    also ich nutze javascript - aber schau mal wie die einzelnen werte heißen - nicht filename sondern path - muss dann im blockly auch so sein

                                    sendTo('puppeteer.0', 'screenshot', { 
                                    
                                        url: 'http://192.168.178.59:8082/vis/index.html?handyBildAnzeige#dtaBild',
                                    
                                        path: '/Daten/iobroker1.png', 
                                    
                                        width:450,
                                    
                                        height:850,
                                    
                                        waitForTimeout: 6000,
                                        fullPage: false,
                                    
                                        clip: {         
                                            x: 0,
                                            y: 0,
                                            width: 450,
                                            height: 850 
                                          }
                                    
                                    });
                                        }
                                    })
                                    
                                    

                                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                    ? 1 Antwort Letzte Antwort
                                    0
                                    • ? Ein ehemaliger Benutzer

                                      @liv-in-sky said in Puppeteer: Screenshots PhantomJS Alternative:

                                      @je-vi

                                      und was geht eigentlich nicht - das erzeugen des bildes oder das versenden des bildes

                                      @liv-in-sky
                                      Hallo,
                                      schon das Erstellen schlägt fehl. Im Log kann ich auch nichts sehen.

                                      puppeteer.0
                                      8301	2023-08-28 16:01:00.005	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388316}
                                      
                                      puppeteer.0
                                      8301	2023-08-28 16:00:00.004	debug	Message: {"command":"screenshot","message":{"url":"http://10.11.207.203:8082/vis/index.html#WetterTageswerte","filename":"/opt/iobroker/phantomcache/AktuellePT.png","clipWidth":"1365","clipHeight":"470","renderTime":"10000"},"from":"system.adapter.javascript.0","_id":62388307}
                                      
                                      puppeteer.0
                                      8301	2023-08-28 15:59:46.321	info	Ready to take screenshots
                                      

                                      Setze ich die Werte direkt unter den Objekten des Adapters wird der Screenshot geschrieben.
                                      Screenshot 2023-08-28 161744.png
                                      Das Problem liegt also an meinem Blockly

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von
                                      #212

                                      @je-vi

                                      alle keys sind hier: https://github.com/foxriver76/ioBroker.puppeteer

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      1 Antwort Letzte Antwort
                                      0
                                      • liv-in-skyL liv-in-sky

                                        @je-vi

                                        also ich nutze javascript - aber schau mal wie die einzelnen werte heißen - nicht filename sondern path - muss dann im blockly auch so sein

                                        sendTo('puppeteer.0', 'screenshot', { 
                                        
                                            url: 'http://192.168.178.59:8082/vis/index.html?handyBildAnzeige#dtaBild',
                                        
                                            path: '/Daten/iobroker1.png', 
                                        
                                            width:450,
                                        
                                            height:850,
                                        
                                            waitForTimeout: 6000,
                                            fullPage: false,
                                        
                                            clip: {         
                                                x: 0,
                                                y: 0,
                                                width: 450,
                                                height: 850 
                                              }
                                        
                                        });
                                            }
                                        })
                                        
                                        
                                        ? Offline
                                        ? Offline
                                        Ein ehemaliger Benutzer
                                        schrieb am zuletzt editiert von
                                        #213

                                        @liv-in-sky said in Puppeteer: Screenshots PhantomJS Alternative:

                                        @je-vi

                                        also ich nutze javascript - aber schau mal wie die einzelnen werte heißen - nicht filename sondern path - muss dann im blockly auch so sein

                                        sendTo('puppeteer.0', 'screenshot', { 
                                        
                                            url: 'http://192.168.178.59:8082/vis/index.html?handyBildAnzeige#dtaBild',
                                        
                                            path: '/Daten/iobroker1.png', 
                                        
                                            width:450,
                                        
                                            height:850,
                                        
                                            waitForTimeout: 6000,
                                            fullPage: false,
                                        
                                            clip: {         
                                                x: 0,
                                                y: 0,
                                                width: 450,
                                                height: 850 
                                              }
                                        
                                        });
                                            }
                                        })
                                        
                                        

                                        Danke für deine Hilfe. Ich habe es jetzt per JavaScript mit jsftp Modul Umgesetzt. War etwas Fummelei Funktioniert nun aber wie es soll und ich kann bei Bedarf den PhantomJS ablösen.

                                        B 1 Antwort Letzte Antwort
                                        0
                                        • ? Ein ehemaliger Benutzer

                                          @liv-in-sky said in Puppeteer: Screenshots PhantomJS Alternative:

                                          @je-vi

                                          also ich nutze javascript - aber schau mal wie die einzelnen werte heißen - nicht filename sondern path - muss dann im blockly auch so sein

                                          sendTo('puppeteer.0', 'screenshot', { 
                                          
                                              url: 'http://192.168.178.59:8082/vis/index.html?handyBildAnzeige#dtaBild',
                                          
                                              path: '/Daten/iobroker1.png', 
                                          
                                              width:450,
                                          
                                              height:850,
                                          
                                              waitForTimeout: 6000,
                                              fullPage: false,
                                          
                                              clip: {         
                                                  x: 0,
                                                  y: 0,
                                                  width: 450,
                                                  height: 850 
                                                }
                                          
                                          });
                                              }
                                          })
                                          
                                          

                                          Danke für deine Hilfe. Ich habe es jetzt per JavaScript mit jsftp Modul Umgesetzt. War etwas Fummelei Funktioniert nun aber wie es soll und ich kann bei Bedarf den PhantomJS ablösen.

                                          B Offline
                                          B Offline
                                          bimmi
                                          schrieb am zuletzt editiert von
                                          #214

                                          Jetzt muss ich hier noch einmal fragen, da ich es bis heute nicht hinbekommen habe und einfach nicht checke was falsch daran ist. Puppeteer läuft zu 100%. Wenn ich screenshots über die Objekte erstelle, dann funktioniert das ganze auch jedoch übernimmt er mir folgende keys nicht wenn ich das in mein Blockly einfüge:

                                          • clip height
                                          • clip width
                                          • waitforselector

                                          Ich habe sämtliche Kombinationen versucht mit konvertiere zu Zahl, als Text, als Nummernfeld usw... Ich denke, dass die Übergabe der Keys nicht richtig ist und ja, ich habe das manual gelesen hier: https://github.com/foxriver76/ioBroker.puppeteer#croplefttopheightwidth

                                          57d82b84-b7db-42b5-baf5-52bcca9679aa-image.png

                                          731986e3-5fb5-4746-955c-44db9a4867f3-image.png

                                          Was hingegen funktioniert ist:

                                          • path
                                          • url
                                          • quality

                                          470ea8eb-a648-43d2-8c28-3d66ddc7bca4-image.png

                                          Man sieht im Log, dass der screenshot erstellt wurde und das er auch an der richtigen Stelle erstellt wird. Bei der Info über den Screenshot sehe ich auch, dass er 100% als Qualität übernommen hat (Standard ist 80%).

                                          Ich hoffe nochmal inständig auf ein paar hilfreiche Tipps von euch. Ich weiß auch, dass hier mehr mit JS Programmiert wird, jedoch möchte ich das ganze noch erweitern und in anderen bereits vorhandenen Blocklys einbauen.

                                          Gruß Christoph

                                          Gruß Bimmi

                                          iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                          liv-in-skyL 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

                                          731

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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