Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Puppeteer Adapter

    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 Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • OliverIO
      OliverIO @Jensen last edited by

      @jensen

      Im npm log wird detailliert berichtet was
      Alles bei der Installation gemacht wird.
      Von daher erstmal alles ok, bis auf die eine Fehlermeldung

      Das ebusy sagt das ein Prozess aktuell in diesem Verzeichnis läuft und daher das umbenennen der Verzeichnisses nicht funktioniert.
      Daher iobroker stoppen.

      Das sollte normalerweise schon funktionieren.
      Deine Installation hat wahrscheinlich schon einen hau.
      Besser wäre es schon alles komplett neu zu installieren.
      Die Abfolge ist um aktuell weiterzukommen

      Jensen 1 Reply Last reply Reply Quote 0
      • Jensen
        Jensen @OliverIO last edited by Jensen

        @oliverio
        Ok, dann mal mit stoppen

        c:\ioBroker>npm install iobroker.puppeteer
        npm warn deprecated dgram@1.0.1: npm is holding this package for security reasons. As it's a core Node module, we will not transfer it over to other users. You may safely remove the package from your dependencies.
        npm warn deprecated @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs
        npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
        npm warn deprecated npmlog@5.0.1: This package is no longer supported.
        npm warn deprecated npmlog@6.0.2: This package is no longer supported.
        npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
        npm warn deprecated har-validator@5.1.5: this library is no longer supported
        npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
        npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
        npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
        npm warn deprecated glob@8.1.0: Glob versions prior to v9 are no longer supported
        npm warn deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
        npm warn deprecated are-we-there-yet@2.0.0: This package is no longer supported.
        npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported.
        npm warn deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
        npm warn deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (github.com/visionmedia/debug/issues/797)
        npm warn deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (github.com/visionmedia/debug/issues/797)
        npm warn deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (github.com/visionmedia/debug/issues/797)
        npm warn deprecated domexception@4.0.0: Use your platform's native DOMException instead
        npm warn deprecated phantomjs-prebuilt@2.1.16: this package is now deprecated
        npm warn deprecated gauge@4.0.4: This package is no longer supported.
        npm warn deprecated gauge@3.0.2: This package is no longer supported.
        npm warn deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See v8.dev/blog/math-random for details.
        npm warn deprecated request@2.88.2: request has been deprecated, see github.com/request/request/issues/3142
        npm warn deprecated sinon@15.2.0: 16.1.1
        
        added 64 packages, removed 2 packages, changed 1295 packages, and audited 1361 packages in 3m
        
        170 packages are looking for funding
          run `npm fund` for details
        
        57 vulnerabilities (6 low, 30 moderate, 20 high, 1 critical)
        
        To address issues that do not require attention, run:
          npm audit fix
        
        To address all issues possible (including breaking changes), run:
          npm audit fix --force
        
        Some issues need review, and may require choosing
        a different dependency.
        
        Run `npm audit` for details.
        

        jetzt sieht das wieder so aus

        c:\ioBroker>npm ls puppeteer
        iobroker.inst@3.0.0 c:\ioBroker
        `-- iobroker.puppeteer@0.3.0
          `-- puppeteer@22.15.0
        

        Bei dem Versuch, über die Adapterseite eine Instanz zu erzeugen, kommt dann das

        $ iobroker add puppeteer auto --host IpsServerWB --debug
        
        node:internal/modules/cjs/loader:1225 const err = new Error(message); ^ Error: Cannot find module 'C:\ioBroker\node_modules\deep-clone\index.js' at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15) at Module._load (node:internal/modules/cjs/loader:1051:27) at cjsLoader (node:internal/modules/esm/translators:346:17) at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:286:7) at ModuleJob.run (node:internal/modules/esm/module_job:234:25) at async ModuleLoader.import (node:internal/modules/esm/loader:473:24) { code: 'MODULE_NOT_FOUND', requireStack: [] } Node.js v20.17.0
        
        ERROR: Process exited with code 1
        

        Ich glaube, das ist alles zwecklos.
        Eine Neuinstallation muß her.

        Jensen OliverIO 2 Replies Last reply Reply Quote 0
        • Jensen
          Jensen @Jensen last edited by

          Ich habe also den Puppeteer Adapter über die Console wieder deinstalliert.
          Bei der Vorbereitung einer Neuinstallation wollte ich alle Scripte exportieren, da kommt dann sowas:

          d07e0f50-0618-4e0a-921c-36129c616016-grafik.png

          Jensen 1 Reply Last reply Reply Quote 0
          • Jensen
            Jensen @Jensen last edited by Jensen

            iob fix

            c:\ioBroker>iob fix
            Need to install the following packages:
            @iobroker/fix@6.0.1
            Ok to proceed? (y) y
            
            Windows installation starting... (fixing = true)
            NPM version: 10.8.3
            No path given, using c:\ioBroker\iobroker-data
            Compressing c:\ioBroker\iobroker-data\states.jsonl
            Cannot compress states.jsonl: Error: Failed to lock DB file "c:\ioBroker\iobroker-data\states.jsonl"!
                at JsonlDB.open (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                at async compressDB (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                at async main (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
            Compressing c:\ioBroker\iobroker-data\objects.jsonl
            Cannot compress objects.jsonl: Error: Failed to lock DB file "c:\ioBroker\iobroker-data\objects.jsonl"!
                at JsonlDB.open (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                at async compressDB (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                at async main (C:\Users\IpsJensen\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
            No relevant JSONL files found to compress, skip
            NPM version: 10.8.3
            Write "iobroker start" to start the ioBroker
            npm install dotenv@^16.4.5 --force --loglevel error --production --save --prefix "c:/ioBroker"
            npm error code EBUSY
            npm error syscall rename
            npm error path c:\ioBroker\node_modules\iobroker.admin
            npm error dest c:\ioBroker\node_modules\.iobroker.admin-FjHuUvU7
            npm error errno -4082
            npm error EBUSY: resource busy or locked, rename 'c:\ioBroker\node_modules\iobroker.admin' -> 'c:\ioBroker\node_modules\.iobroker.admin-FjHuUvU7'
            npm error A complete log of this run can be found in: C:\Users\IpsJensen\AppData\Local\npm-cache\_logs\2024-09-07T06_21_00_662Z-debug-0.log
            Error when installing dotenv Library: Error: Command failed: npm install dotenv@^16.4.5 --force --loglevel error --production --save --prefix "c:/ioBroker"
            

            sieht auch nicht berauschend aus

            Jensen 1 Reply Last reply Reply Quote 0
            • Jensen
              Jensen @Jensen last edited by

              Und was mir noch auffällt, ich habe kein admin.0, sondern nur ein admin.1
              Das ist doch auch nicht normal, oder?

              Jensen 1 Reply Last reply Reply Quote 0
              • Jensen
                Jensen @Jensen last edited by

                Nach Einrichten der Istanz admin.0 und Löschen von admin.1 kann ich die Skripte jetzt wieder problemlos exportieren.

                1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @Jensen last edited by

                  @jensen
                  Schon seltsam.
                  Er meckert das ein bestimmtes Modul nicht gefunden worden ist.
                  Neuinstallation macht Sinn. Es sind Zuviel kleinklein Probleme
                  Und ob das dann später noch stabil läuft ist auch keine Garantie.
                  Was für Hardware und Festplatte hast du im Einsatz?

                  Jensen 1 Reply Last reply Reply Quote 0
                  • Jensen
                    Jensen @OliverIO last edited by

                    @oliverio
                    NUC i5 mit SSD

                    OliverIO 1 Reply Last reply Reply Quote 0
                    • OliverIO
                      OliverIO @Jensen last edited by

                      @jensen
                      Ne dann ist es eher unwahrscheinlich das die Platte was hat

                      Jensen 1 Reply Last reply Reply Quote 0
                      • Jensen
                        Jensen @OliverIO last edited by

                        @oliverio
                        So, ich habe den Sonntag für eine Neuinstallation genutzt.
                        ioBroker neu installiert, die Basics eingerichtet, dann ein Restore, dann hier und da ein wenig geradeziehen, alles halbwegs stressfrei.
                        Als dann alles wieder lief und ich keine Probleme mehr sehen konnte, wieder den Puppeteer Adapter installiert, direkt von der Adapterseite, alles problemlos und ohne Fehlermeldungen.
                        Insofern hat die Neuinstallation schon mal was gebracht.

                        Leider kann ich aber immer noch keine Bilder erzeugen.
                        Der Adapter liefert folgende Fehlermeldung:

                        • bei den Flot Charts
                        Could not take screenshot of "http://localhost:8082/flot/index.html?timeType=static&relativeEnd=now&range=10&aggregateType=count&aggregateSpan=300&hoverDetail=false&useComma=false&zoom=false&noedit=true&animation=0&l%5B0%5D%5Bid%5D=javascript.0.Haus.Verbrauch&l%5B0%5D%5Binstance%5D=sql.0&l%5B0%5D%5Boffset%5D=0&l%5B0%5D%5Baggregate%5D=minmax&l%5B0%5D%5Bcolor%5D=%23FF0000&l%5B0%5D%5Bmin%5D=0&l%5B0%5D%5Bmax%5D=6&l%5B0%5D%5Bthickness%5D=1&l%5B0%5D%5Bshadowsize%5D=0&l%5B0%5D%5BafterComma%5D=2&l%5B0%5D%5Bdashes%5D=false&l%5B0%5D%5BdashLength%5D=10&l%5B0%5D%5BspaceLength%5D=10&l%5B1%5D%5Bid%5D=javascript.0.Haus.Einspeisung&l%5B1%5D%5Binstance%5D=sql.0&l%5B1%5D%5Boffset%5D=0&l%5B1%5D%5Baggregate%5D=minmax&l%5B1%5D%5Bcolor%5D=%2300FF00&l%5B1%5D%5Bthickness%5D=1&l%5B1%5D%5Bshadowsize%5D=0&l%5B1%5D%5Byaxe%5D=off&l%5B1%5D%5Bxaxe%5D=off&l%5B1%5D%5BcommonYAxis%5D=1&l%5B1%5D%5BafterComma%5D=2&l%5B1%5D%5Bdashes%5D=false&l%5B1%5D%5BdashLength%5D=10&l%5B1%5D%5BspaceLength%5D=10&l%5B2%5D%5Bid%5D=javascript.0.PV.TriPower.PV-Leistung_kW&l%5B2%5D%5Binstance%5D=sql.0&l%5B2%5D%5Boffset%5D=0&l%5B2%5D%5Baggregate%5D=minmax&l%5B2%5D%5Bcolor%5D=%23ffc300&l%5B2%5D%5Bthickness%5D=1&l%5B2%5D%5Bshadowsize%5D=0&l%5B2%5D%5Byaxe%5D=off&l%5B2%5D%5Bxaxe%5D=off&l%5B2%5D%5BcommonYAxis%5D=1&l%5B2%5D%5BafterComma%5D=2&l%5B2%5D%5Bdashes%5D=false&l%5B2%5D%5BdashLength%5D=10&l%5B2%5D%5BspaceLength%5D=10&l%5B3%5D%5Bid%5D=modbus.1.inputRegisters.13350_TO_TotalDemand&l%5B3%5D%5Binstance%5D=sql.0&l%5B3%5D%5Boffset%5D=0&l%5B3%5D%5Baggregate%5D=minmax&l%5B3%5D%5Bcolor%5D=%2352a0ff&l%5B3%5D%5Bthickness%5D=1&l%5B3%5D%5Bshadowsize%5D=0&l%5B3%5D%5Bname%5D=PV+Demand&l%5B3%5D%5Byaxe%5D=off&l%5B3%5D%5Bxaxe%5D=off&l%5B3%5D%5BcommonYAxis%5D=1&l%5B3%5D%5BignoreNull%5D=&l%5B3%5D%5BafterComma%5D=2&l%5B3%5D%5Bdashes%5D=false&l%5B3%5D%5BdashLength%5D=10&l%5B3%5D%5BspaceLength%5D=10&l%5B4%5D%5Bid%5D=modbus.1.coils.12310_PV_Freigabe&l%5B4%5D%5Binstance%5D=sql.0&l%5B4%5D%5Boffset%5D=0&l%5B4%5D%5Baggregate%5D=minmax&l%5B4%5D%5Bcolor%5D=%23FF00FF&l%5B4%5D%5Bmin%5D=-15&l%5B4%5D%5Bmax%5D=5&l%5B4%5D%5Bthickness%5D=1&l%5B4%5D%5Bshadowsize%5D=0&l%5B4%5D%5Bname%5D=PV+Freigabe&l%5B4%5D%5BignoreNull%5D=&l%5B4%5D%5BafterComma%5D=2&l%5B4%5D%5Bdashes%5D=false&l%5B4%5D%5BdashLength%5D=10&l%5B4%5D%5BspaceLength%5D=10&l%5B4%5D%5Byaxe%5D=off&l%5B4%5D%5Bxaxe%5D=off&start=2024-09-07&start_time=06:00:00&end=2024-09-08&end_time=20:00:00&width=700&height=300&legend=nw&legColumns=5&legBgOpacity=0&timeFormat=%25H%3A%25M": net::ERR_ABORTED at http://localhost:8082/flot/index.html?timeType=static&relativeEnd=now&range=10&aggregateType=count&aggregateSpan=300&hoverDetail=false&useComma=false&zoom=false&noedit=true&animation=0&l%5B0%5D%5Bid%5D=javascript.0.Haus.Verbrauch&l%5B0%5D%5Binstance%5D=sql.0&l%5B0%5D%5Boffset%5D=0&l%5B0%5D%5Baggregate%5D=minmax&l%5B0%5D%5Bcolor%5D=%23FF0000&l%5B0%5D%5Bmin%5D=0&l%5B0%5D%5Bmax%5D=6&l%5B0%5D%5Bthickness%5D=1&l%5B0%5D%5Bshadowsize%5D=0&l%5B0%5D%5BafterComma%5D=2&l%5B0%5D%5Bdashes%5D=false&l%5B0%5D%5BdashLength%5D=10&l%5B0%5D%5BspaceLength%5D=10&l%5B1%5D%5Bid%5D=javascript.0.Haus.Einspeisung&l%5B1%5D%5Binstance%5D=sql.0&l%5B1%5D%5Boffset%5D=0&l%5B1%5D%5Baggregate%5D=minmax&l%5B1%5D%5Bcolor%5D=%2300FF00&l%5B1%5D%5Bthickness%5D=1&l%5B1%5D%5Bshadowsize%5D=0&l%5B1%5D%5Byaxe%5D=off&l%5B1%5D%5Bxaxe%5D=off&l%5B1%5D%5BcommonYAxis%5D=1&l%5B1%5D%5BafterComma%5D=2&l%5B1%5D%5Bdashes%5D=false&l%5B1%5D%5BdashLength%5D=10&l%5B1%5D%5BspaceLength%5D=10&l%5B2%5D%5Bid%5D=javascript.0.PV.TriPower.PV-Leistung_kW&l%5B2%5D%5Binstance%5D=sql.0&l%5B2%5D%5Boffset%5D=0&l%5B2%5D%5Baggregate%5D=minmax&l%5B2%5D%5Bcolor%5D=%23ffc300&l%5B2%5D%5Bthickness%5D=1&l%5B2%5D%5Bshadowsize%5D=0&l%5B2%5D%5Byaxe%5D=off&l%5B2%5D%5Bxaxe%5D=off&l%5B2%5D%5BcommonYAxis%5D=1&l%5B2%5D%5BafterComma%5D=2&l%5B2%5D%5Bdashes%5D=false&l%5B2%5D%5BdashLength%5D=10&l%5B2%5D%5BspaceLength%5D=10&l%5B3%5D%5Bid%5D=modbus.1.inputRegisters.13350_TO_TotalDemand&l%5B3%5D%5Binstance%5D=sql.0&l%5B3%5D%5Boffset%5D=0&l%5B3%5D%5Baggregate%5D=minmax&l%5B3%5D%5Bcolor%5D=%2352a0ff&l%5B3%5D%5Bthickness%5D=1&l%5B3%5D%5Bshadowsize%5D=0&l%5B3%5D%5Bname%5D=PV+Demand&l%5B3%5D%5Byaxe%5D=off&l%5B3%5D%5Bxaxe%5D=off&l%5B3%5D%5BcommonYAxis%5D=1&l%5B3%5D%5BignoreNull%5D=&l%5B3%5D%5BafterComma%5D=2&l%5B3%5D%5Bdashes%5D=false&l%5B3%5D%5BdashLength%5D=10&l%5B3%5D%5BspaceLength%5D=10&l%5B4%5D%5Bid%5D=modbus.1.coils.12310_PV_Freigabe&l%5B4%5D%5Binstance%5D=sql.0&l%5B4%5D%5Boffset%5D=0&l%5B4%5D%5Baggregate%5D=minmax&l%5B4%5D%5Bcolor%5D=%23FF00FF&l%5B4%5D%5Bmin%5D=-15&l%5B4%5D%5Bmax%5D=5&l%5B4%5D%5Bthickness%5D=1&l%5B4%5D%5Bshadowsize%5D=0&l%5B4%5D%5Bname%5D=PV+Freigabe&l%5B4%5D%5BignoreNull%5D=&l%5B4%5D%5BafterComma%5D=2&l%5B4%5D%5Bdashes%5D=false&l%5B4%5D%5BdashLength%5D=10&l%5B4%5D%5BspaceLength%5D=10&l%5B4%5D%5Byaxe%5D=off&l%5B4%5D%5Bxaxe%5D=off&start=2024-09-07&start_time=06:00:00&end=2024-09-08&end_time=20:00:00&width=700&height=300&legend=nw&legColumns=5&legBgOpacity=0&timeFormat=%25H%3A%25M
                        

                        und bei meiner Wetter Seite

                        Could not take screenshot of "file:///C:/ioBroker/images/msnweather1.html": Navigation timeout of 30000 ms exceeded
                        

                        In beiden Fällen kann ich die URL im Browser aufrufen und bekomme angezeigt, was ich erwarte.
                        Da ich nichts an meinen Scripten geändert habe, und beide Fälle für die ich den Puppeteer Adapter monatelang benutzt habe nun nicht mehr funktionieren, denke ich, das muß mit irgendeinem Update zu tun haben. Aber ich finde keinen Ansatz, wo ich nun wieder suchen könnte.

                        OliverIO 1 Reply Last reply Reply Quote 0
                        • OliverIO
                          OliverIO @Jensen last edited by

                          @jensen
                          Kannst du mir mal komplette Beispiele geben?
                          Verwendest du sendto oder die datenpunkte?
                          Ich versuche das mal nachzustellen

                          Jensen 1 Reply Last reply Reply Quote 0
                          • Jensen
                            Jensen @OliverIO last edited by

                            @oliverio
                            Ich benutze sendto, im Groben sieht das bei mir so aus :

                            function createImage(_output, _url) {
                                //log(_url);
                                log('try to create : ' + _output);
                                sendTo('puppeteer.0', 'screenshot', { 
                                    url: _url,
                                    path: '../../images/' + _output,
                                    viewportOptions: {
                                        width: 700,
                                        height: 300
                                    },
                                    renderTime: 20000
                                },
                                obj => {
                                  if (obj.error) {
                                    log('Error taking screenshot: ${obj.error.message}', 'error');
                                  } 
                                });    
                            }
                            
                            
                            // PV heute
                            var url01 = 'http://localhost:8082/flot/ .........';
                            createImage('img01.png', url01);
                            
                            

                            Die Url müßtest du durch was Brauchbares auf deinem System ersetzen.

                            Ich glaube aber, das Problem steckt tiefer, entweder in der verwendeten Puppeteer Version oder eher in der darunterliegenden chrome Version.

                            Ich finde auf meinem System schon wieder so viele verschiedene Versionen von chrome, das verwirrt mich.
                            Unter C:\Windows\System32\config\systemprofile.cache\puppeteer\chrome
                            99012d62-e1dd-4889-abea-3b7e8ea4a0d1-grafik.png
                            Im Benutzer Verzeichnis C:\Users\IpsJensen.cache\puppeteer\chrome
                            6571380e-14a5-4e72-b5ba-f7706474e16b-grafik.png

                            Wie sind da die Zusammenhänge?
                            Wer installiert was wann wo, und wo wird entschieden, was benutzt wird?

                            Jensen OliverIO 3 Replies Last reply Reply Quote 0
                            • Jensen
                              Jensen @Jensen last edited by

                              @foxriver76
                              Könntest Du vielleicht einem Ahnungslosen etwas weiter helfen?
                              Ich weiß hier einfach nicht weiter.

                              1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO @Jensen last edited by

                                @jensen

                                Der Adapter nutzt eigentlich nur das folgende package.
                                Dies sorgt sich um das herunterladen und das richtige ansprechen des Browsers.

                                https://www.npmjs.com/package/puppeteer

                                Hauptanwendungszweck dieses Pakets ist automatisierter Tests von webanwendungen.
                                Dazu wird meist die applikation in einer gekapselten virtuellen Umgebung (meist sowas wie docker) installiert, die Tests ausgeführt und am Ende die komplette Umgebung wieder weggeworfen.
                                Andere anwendungsfälle sind webscraping oder sowas wie hier, was aber wahrscheinlich bei weitem nicht so oft in der Welt angewendet wird.

                                Das deinstallieren von Browsern wurde erst letztes Jahr hinzugefügt
                                https://github.com/puppeteer/puppeteer/pull/10179
                                Ob das im Adapter berücksichtigt ist weiß ich nicht.

                                Die Ursache deiner Fehler kann vielfältig sein.
                                Bei flot stand im Ergebnis ein net_err drin. Das deutet darauf hin, das irgendwas mit der netzverbindung nicht passt. Aber auch hier kann es vielfältig sein. Am wahrscheinlichsten sind timeouts, aber daher wollte ich das mal für mich selbst probieren um das einzugrenzen.

                                Bei deinem msnwetter kann es sein, das der Anbieter Begrenzungen eingebaut hat, die ein automatisiertes Abrufen verhindert. Ich selbst bin im Zusammenhang einer nieten Fragestellung letztens auch auf sowas gestoßen, das der Abruf im Browser funktioniert, mit puppeteer aber nicht. Wie die verhinderungsstrategie funktioniert weiß ich aktuell nicht.

                                Also ichdenke nicht das der Fehler aktuell noch an puppeteer liegt

                                OrKoN created this issue in puppeteer/puppeteer

                                closed feat: add ability to uninstall a browser #10179

                                1 Reply Last reply Reply Quote 0
                                • OliverIO
                                  OliverIO @Jensen last edited by OliverIO

                                  @jensen sagte in Puppeteer Adapter:

                                  also flot funktioniert bei mir
                                  ae0420c5-9870-4e11-accf-91c26daa97b3-image.png

                                  msn weather eigentlich auch, allerdings erhalte ich mit puppeteer nur die folgende seite
                                  fde6e2e4-275b-434f-a049-b531a4f4f3e8-image.png

                                  link ist
                                  https://www.msn.com/en-us/weather/forecast/in-Frankfurt,Hesse

                                  aufgrund des net_err vermute ich, das irgendwas mit dem abruf der daten von deinem nuc nicht passt.
                                  probiere es mal direkt von dort mit curl

                                  um im script eine bessere fehlermeldung zu erhalten ändere mal die zeile zu.
                                  da waren die falschen anfürhungszeichen drin und message ist da auch nicht vorhanden.
                                  ich frage mich wie du die fehlermeldung weiter oben produzieren konntest?

                                          log(`Error taking screenshot: ${obj.error}`, 'error');
                                  

                                  wenn der timeout von puppeteer nicht reicht, dann solltest du die folgende option einbauen

                                  waitForTimeout

                                      sendTo('puppeteer.0', 'screenshot', { 
                                          url: _url,
                                          path: '../../images/' + _output,
                                          viewportOptions: {
                                              width: 700,
                                              height: 300
                                          },
                                        renderTime: 20000,
                                        waitOption: {
                                          waitForTimeout: 20000,
                                        },        
                                  

                                  der generelle timeout ist auf 5 sekunden eingestellt, was eigentlich reichen sollte.

                                  überprüfe auch mal noch deinen bilderpfad, ob der existiert.
                                  evtl mal ohne pfad nur mit img.png eintragen, dann findest du das bild unter /opt/iobroker/ioberoker-data

                                  1 Reply Last reply Reply Quote 0
                                  • Jensen
                                    Jensen last edited by Jensen

                                    @oliverio
                                    Für msnweather brauchst du die von mir geparste Datei.
                                    msnweather1.html
                                    (Bitte nicht an den komischen Zeichen vor dem °C stören, das ist ein anderes Thema.

                                    Was ist der Unterschied bei diesen verschiedenen Apostrophen?
                                    Ich habe meine Log Zeile geändert.
                                    Die waitOption habe ich auch dazu gebaut.

                                    Ergebnis:

                                    javascript.0
                                       2024-09-09 15:48:27.524	error	script.js.test.PuppeteerSample3: Error taking screenshot: timeout
                                    javascript.0
                                       2024-09-09 15:48:07.516	info	script.js.test.PuppeteerSample3: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                                    javascript.0
                                       2024-09-09 15:48:07.516	info	script.js.test.PuppeteerSample3: try to create : msnweather1.png
                                    javascript.0
                                       2024-09-09 15:48:07.516	info	script.js.test.PuppeteerSample3: file:///C:/ioBroker/images/msnweather1.html
                                    javascript.0
                                       2024-09-09 15:48:07.495	info	Start JavaScript script.js.test.PuppeteerSample3 (Javascript/js) 
                                    

                                    Interessant ist, ich habe waitOption auf 60000, renderTime auf 30000, aber der timeout kommt nach 20000.

                                    Jensen 1 Reply Last reply Reply Quote 0
                                    • Jensen
                                      Jensen @Jensen last edited by

                                      Ohne Pfad bringt auch keine Änderung.

                                      OliverIO 1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @Jensen last edited by

                                        @jensen

                                        Was sagt curl?

                                        Jensen 1 Reply Last reply Reply Quote 0
                                        • Jensen
                                          Jensen @OliverIO last edited by

                                          @oliverio
                                          curl ?
                                          Was muß ich tun?

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Jensen last edited by

                                            @jensen

                                            curl müsste seit windows 10 installiert sein.

                                            du gehst auf die komandozeile deines nucs
                                            am besten mit der gleichen berechtigung wie iobroker
                                            und führst bspw das aus

                                            in anführungszeichen steht der link.
                                            curl ruft dann die daten ab, ungefähr so wie es puppeteer macht und gibt sie aus.
                                            wenn irgendwelche fehler dabei angezeigt werden könnte das interessant sein

                                            curl "https://www.msn.com/en-us/weather/forecast/in-Frankfurt,Hesse?loc=eyJsIjoiRnJhbmtmdXJ0IiwiciI6Ikhlc3NlIiwicjIiOiJGcmFua2Z1cnQgYW0gTWFpbiIsImMiOiJHZXJtYW55IiwiaSI6IkRFIiwidCI6MTAyLCJnIjoiZW4tdXMiLCJ4IjoiOC42Nzk0OTk2MjYxNTk2NjgiLCJ5IjoiNTAuMTEwOTAwODc4OTA2MjUiLCJvIjp0cnVlfQ%3D%3D&weadegreetype=C"
                                            

                                            hier die anleitung für curl
                                            https://curl.se/docs/manpage.html

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            637
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            75
                                            3828
                                            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