Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Puppeteer: Screenshots PhantomJS Alternative

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Puppeteer: Screenshots PhantomJS Alternative

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator @foxriver76 last edited by

      @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

      Bitte 0.2.5 probieren.

      Perfekt! 🙂

      Schaut jetzt sehr gut aus.
      Merci

      sendTo('puppeteer.0', 'screenshot', { 
          url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
          clip: {
              x: 0,
              y: 0,
              width: 1000,
              height: 757
          },
          ioBrokerOptions: {
              storagePath: 'wetterstation.png',
            },
          viewportOptions: {
       width: 1600,
      height: 1000
      }
      });
      

      wetterstation.png

      foxriver76 1 Reply Last reply Reply Quote 0
      • foxriver76
        foxriver76 Developer @Negalein last edited by

        @negalein Perfekt, freut mich, dass wir den Adapter verbessern konnten. 😉

        Negalein 2 Replies Last reply Reply Quote 1
        • Negalein
          Negalein Global Moderator @foxriver76 last edited by

          @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

          Perfekt, freut mich, dass wir den Adapter verbessern konnten.

          Ja, freut mich auch.
          Jetzt kommt der Langzeittest.
          Phantomjs hat mir den ioB gekillt. Wurde immer träger, bis zum Absturz.

          PS: schnell eine Website erstellt (nicht aufs Desigh achten 😂 ) http://wetter.nega.at/

          1 Reply Last reply Reply Quote 0
          • Negalein
            Negalein Global Moderator @foxriver76 last edited by

            @foxriver76

            PS: kannst du mir da mit einem Timeout oder so helfen?

            Es passiert oft, dass er schneller mit dem FTP anfängt, ehe er die Datei schreibt.
            Was muss ich machen, damit er mit dem FTP erst 5 Sek. später anfängt?

            schedule("*/3 * * * *", function () {
            sendTo('puppeteer.0', 'screenshot', { 
                url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
                clip: {
                    x: 0,
                    y: 0,
                    width: 1000,
                    height: 757
                },
                ioBrokerOptions: {
                    storagePath: 'wetterstation.png',
                  },
                viewportOptions: {
             width: 1600,
            height: 1000
            }
            });
              exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com');
              console.log("exec: " + 'wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com');
            });
            
            
            foxriver76 1 Reply Last reply Reply Quote 0
            • foxriver76
              foxriver76 Developer @Negalein last edited by

              @negalein sagte in Puppeteer: Screenshots PhantomJS Alternative:

              @foxriver76

              PS: kannst du mir da mit einem Timeout oder so helfen?

              Es passiert oft, dass er schneller mit dem FTP anfängt, ehe er die Datei schreibt.
              Was muss ich machen, damit er mit dem FTP erst 5 Sek. später anfängt?

              schedule("*/3 * * * *", function () {
              sendTo('puppeteer.0', 'screenshot', { 
                  url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
                  clip: {
                      x: 0,
                      y: 0,
                      width: 1000,
                      height: 757
                  },
                  ioBrokerOptions: {
                      storagePath: 'wetterstation.png',
                    },
                  viewportOptions: {
               width: 1600,
              height: 1000
              }
              }, () =>
                exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com');
                console.log("exec: " + 'wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com');
              });
              });
              

              Sorry nur Handy, habe es leicht abgeändert dass es erst im callback passiert, dann sollte er es vorher geschrieben haben.

              Negalein 1 Reply Last reply Reply Quote 0
              • Negalein
                Negalein Global Moderator @foxriver76 last edited by

                @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                habe es leicht abgeändert dass es erst im callback passiert, dann sollte er es vorher geschrieben haben.

                da bekomm ich javascript.0 (564) script.js.Wetter.Wetter_to_FTP compile failed: at script.js.Wetter.Wetter_to_FTP:18

                foxriver76 1 Reply Last reply Reply Quote 0
                • foxriver76
                  foxriver76 Developer @Negalein last edited by

                  @negalein Vom Rechner:

                  schedule("*/3 * * * *", () => {
                    sendTo("puppeteer.0", "screenshot", {
                      url: "http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk",
                      clip: {
                        x: 0,
                        y: 0,
                        width: 1000,
                        height: 757
                      },
                      ioBrokerOptions: {
                        storagePath: "wetterstation.png"
                      },
                      viewportOptions: {
                        width: 1600,
                        height: 1000
                      }
                    }, () => {
                      exec("wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com");
                      console.log("exec: " + "wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com");
                    });
                  });
                  
                  Negalein 1 Reply Last reply Reply Quote 0
                  • Negalein
                    Negalein Global Moderator @foxriver76 last edited by

                    @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                    Vom Rechner:

                    fuck, ioB geht in die Knie 😞

                    06a90534-265d-4d35-a311-ebd55c3fa775-image.png

                    foxriver76 1 Reply Last reply Reply Quote 0
                    • foxriver76
                      foxriver76 Developer @Negalein last edited by

                      @negalein Pack mal bisschen Log rein, evtl so und dann zeig mal das Log:

                      schedule('*/3 * * * *', () => {
                          sendTo('puppeteer.0', 'screenshot', {
                              url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
                              clip: {
                                  x: 0,
                                  y: 0,
                                  width: 1000,
                                  height: 757
                              },
                              ioBrokerOptions: {
                                  storagePath: 'wetterstation.png'
                              },
                              viewportOptions: {
                                  width: 1600,
                                  height: 1000
                              }
                          }, obj => {
                              if (obj.error) {
                                  log(`Error taking screenshot: ${obj.error}`, 'error');
                                  return;
                              }
                      
                              log(`exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com`, 'info');
                              exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com', (error, stdout, stderr) => {
                                  if (error) {
                                      log(`Error on upload: ${stderr}` || error, 'error');
                                  } else {
                                      log(`Upload finished: ${stdout}`, 'info');
                                  }
                              });
                          });
                      });
                      
                      foxriver76 1 Reply Last reply Reply Quote 0
                      • foxriver76
                        foxriver76 Developer last edited by

                        @Negalein und upgrade bitte auf 0.2.6. Es wurde vergessen Pages zu schließen, wenn über Messages Screenshots getriggered werden., wobei ich mir nicht vorstellen kann, dass das so schnell zu einem Anstieg kommt.

                        Negalein 1 Reply Last reply Reply Quote 0
                        • Negalein
                          Negalein Global Moderator @foxriver76 last edited by

                          @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                          und upgrade bitte auf 0.2.6. Es wurde vergessen Pages zu schließen, wenn über Messages Screenshots getriggered werden., wobei ich mir nicht vorstellen kann, dass das so schnell zu einem Anstieg kommt.

                          läuft seit ca. 1,5 Stunden stabil 🙂

                          1 Reply Last reply Reply Quote 0
                          • Negalein
                            Negalein Global Moderator last edited by Negalein

                            @foxriver76

                            Adapter läuft noch immer stabil! 😁

                            Aber im Log kommt oft ein FTP Error.

                            Könnt ich den Upload noch verfeinern? Du kennst dich da sicher besser aus! 🙂

                            javascript.0 2022-08-16 22:36:03.118	error	script.js.Wetter.Wetter_to_FTP: Error on upload:
                            javascript.0 2022-08-16 22:36:02.900	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com
                            puppeteer.0 2022-08-16 22:36:02.819	debug	Write file to "wetterstation.png"
                            puppeteer.0 2022-08-16 22:36:02.555	debug	Write file to "wetterstation.png"
                            puppeteer.0 2022-08-16 22:36:00.383	debug	Message: {"command":"screenshot","message":{"url":"http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk","clip":{"x":0,"y":0,"width":1000,"height":757},"ioBrokerOptions":{"storagePath":"wetterstation.png"},"viewportOptions":{"width":1600,"height":1000}},"from":"system.adapter.javascript.0","callback":{"message":{"url":"http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk","clip":{"x":0,"y":0,"width":1000,"height":757},"ioBrokerOptions":{"storagePath":"wetterstation.png"},"viewportOptions":{"width":1600,"height":1000}},"id":5799,"ack":false,"time":1660682160267},"_id":27657967}
                            

                            Schaut dann oft so aus
                            e058ce34-619d-48d7-adb2-903cde0dc96a-image.png
                            db0efca4-a06c-48d1-afc5-e8ec3fa943ac-image.png

                            1 Reply Last reply Reply Quote 0
                            • foxriver76
                              foxriver76 Developer @foxriver76 last edited by

                              @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                              @negalein Pack mal bisschen Log rein, evtl so und dann zeig mal das Log:

                              schedule('*/3 * * * *', () => {
                                  sendTo('puppeteer.0', 'screenshot', {
                                      url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
                                      clip: {
                                          x: 0,
                                          y: 0,
                                          width: 1000,
                                          height: 757
                                      },
                                      ioBrokerOptions: {
                                          storagePath: 'wetterstation.png'
                                      },
                                      viewportOptions: {
                                          width: 1600,
                                          height: 1000
                                      }
                                  }, obj => {
                                      if (obj.error) {
                                          log(`Error taking screenshot: ${obj.error}`, 'error');
                                          return;
                                      }
                              
                                      log(`exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com`, 'info');
                                      exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com', (error, stdout, stderr) => {
                                          if (error) {
                                              log(`Error on upload: ${stderr || error}`, 'error');
                                          } else {
                                              log(`Upload finished: ${stdout}`, 'info');
                                          }
                                      });
                                  });
                              });
                              

                              @Negalein ups der Error wird verschluckt, mach mal so wie oben.

                              Negalein foxriver76 2 Replies Last reply Reply Quote 0
                              • Negalein
                                Negalein Global Moderator @foxriver76 last edited by

                                @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                ups der Error wird verschluckt, mach mal so wie oben.

                                javascript.0 2022-08-16 23:06:03.562	error	script.js.Wetter.Wetter_to_FTP: Error on upload:
                                javascript.0 2022-08-16 23:06:03.336	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://nega_wetter:yinutu26@www37.world4you.com
                                javascript.0 2022-08-16 23:06:03.129	error	script.js.Wetter.Wetter_to_FTP: Error on upload: Error: Command failed: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com
                                javascript.0 2022-08-16 23:06:02.883	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com
                                
                                1 Reply Last reply Reply Quote 0
                                • foxriver76
                                  foxriver76 Developer @foxriver76 last edited by

                                  @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                  @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                  @negalein Pack mal bisschen Log rein, evtl so und dann zeig mal das Log:

                                  schedule('*/3 * * * *', () => {
                                      sendTo('puppeteer.0', 'screenshot', {
                                          url: 'http://10.0.1.203:3000/d/14q2Khmnz/wetterstation-copy?orgId=1&refresh=1m&kiosk',
                                          clip: {
                                              x: 0,
                                              y: 0,
                                              width: 1000,
                                              height: 757
                                          },
                                          ioBrokerOptions: {
                                              storagePath: 'wetterstation.png'
                                          },
                                          viewportOptions: {
                                              width: 1600,
                                              height: 1000
                                          }
                                      }, obj => {
                                          if (obj.error) {
                                              log(`Error taking screenshot: ${obj.error}`, 'error');
                                              return;
                                          }
                                  
                                          log(`exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com`, 'info');
                                          exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxxx:xxxxxx@www37.world4you.com', (error, stdout, stderr) => {
                                              if (error) {
                                                  log(`Error on upload: ${error} (${stderr})`, 'error');
                                              } else {
                                                  log(`Upload finished: ${stdout}`, 'info');
                                              }
                                          });
                                      });
                                  });
                                  

                                  @Negalein dann so 😉

                                  Negalein 1 Reply Last reply Reply Quote 0
                                  • Negalein
                                    Negalein Global Moderator @foxriver76 last edited by Negalein

                                    @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                    dann so

                                    javascript.0 2022-08-17 13:30:05.222	error	script.js.Wetter.Wetter_to_FTP: Error on upload: Error: Command failed: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com
                                    javascript.0 2022-08-17 13:30:05.144	error	script.js.Wetter.Wetter_to_FTP: Error on upload:
                                    javascript.0 2022-08-17 13:30:04.953	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com
                                    javascript.0 2022-08-17 13:30:04.845	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com
                                    javascript.0 2022-08-17 13:30:04.659	error	script.js.Wetter.Wetter_to_FTP: Error on upload: Error: Command failed: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com ()
                                    javascript.0 2022-08-17 13:30:04.415	info	script.js.Wetter.Wetter_to_FTP: exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com
                                    

                                    mit Errors

                                    foxriver76 1 Reply Last reply Reply Quote 0
                                    • foxriver76
                                      foxriver76 Developer @Negalein last edited by

                                      @negalein na dolle, da steht nicht viel ^^

                                      Allerdings, warum läuft das so hochfrequent? 13:30:04.415 macht er wput und dann direkt 13:30:04.845 etc. evtl kommt sich da was in die Quere. Ist das Skript 1 zu 1 so wie gepostet oder läuft der schedule hochfrequenter?

                                      Negalein 1 Reply Last reply Reply Quote 0
                                      • Negalein
                                        Negalein Global Moderator @foxriver76 last edited by

                                        @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                        Allerdings, warum läuft das so hochfrequent? 13:30:04.415 macht er wput und dann direkt 13:30:04.845 etc. evtl kommt sich da was in die Quere. Ist das Skript 1 zu 1 so wie gepostet oder läuft der schedule hochfrequenter?

                                        Ja, das ist mir auch aufgefallen.

                                        Script ist 1:1 wie oben.

                                        schedule('*/3 * * * *', () => {
                                            sendTo('puppeteer.0', 'screenshot', {
                                                url: 'http://10.0.1.203:3000/d/sRh7W1m4k/wetterstation-copy-2?orgId=1&kiosk',
                                                clip: {
                                                    x: 0,
                                                    y: 0,
                                                    width: 1000,
                                                    height: 1100
                                                },
                                                ioBrokerOptions: {
                                                    storagePath: 'wetterstation.png'
                                                },
                                                viewportOptions: {
                                                    width: 1600,
                                                    height: 1000
                                                }
                                            }, obj => {
                                                if (obj.error) {
                                                    log(`Error taking screenshot: ${obj.error}`, 'error');
                                                    return;
                                                }
                                         
                                                log(`exec: wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com`, 'info');
                                                exec('wput -nc /opt/iobroker/iobroker-data/files/0_userdata.0/wetterstation.png ftp://xxxxx:xxxxx@www37.world4you.com', (error, stdout, stderr) => {
                                                    if (error) {
                                                        log(`Error on upload: ${error} (${stderr})`, 'error');
                                                    } else {
                                                        log(`Upload finished: ${stdout}`, 'info');
                                                    }
                                                });
                                            });
                                        });
                                        
                                        foxriver76 2 Replies Last reply Reply Quote 0
                                        • foxriver76
                                          foxriver76 Developer @Negalein last edited by

                                          @negalein Mach mal vor das sendTo noch ein logging rein bitte, falls pro sendTo log dann ein exec log ist, dann sollten wir einfach von schedule auf timeouts wechseln.

                                          Negalein 1 Reply Last reply Reply Quote 0
                                          • Negalein
                                            Negalein Global Moderator @foxriver76 last edited by

                                            @foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                            vor das sendTo noch ein logging rein bitte, falls pro sendTo log dann ein exec log ist

                                            wie mach ich das?
                                            JS ist chinesisch 😂

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            864
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            browser headless phantomjs puppeteer screenshot screenshots website
                                            23
                                            245
                                            25935
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo