NEWS
Puppeteer Adapter
-
und ist er in der adapter sicht des iobrokers auch weg?
wenn ja, kannst ihn wieder über die adaptersicht des iobrokers wieder installieren
und schauen ob alles funktioniertund bitte nur noch die iobroker befehle und die iobroker oberfläche verwenden.
npm ist für dich tabu, ausser jemand der sich auskennt sagt es ausdrücklich.
dann aber auch immer nur mit vorhergehendem backup -
@oliverio
In der Adapteransicht wird er auch nicht mehr als installiert gelistet, sieht alles sehr gut aus.
Ich lasse es bis morgen ruhen, damit heute Nacht erst mal das Backup durchläuft.
Dann ein neuer Versuch, ohne npmDanke für die Hilfe und die Geduld mit mir.
-
Wie versprochen werde ich jetzt alle Schritte dokumentieren, die ich unternehme um den Puppeteer Adapter wieder ins System zu bringen.
Adapter installieren
Eigentlich denke ich, man sollte über die Adapterseite jeden Adapter bei laufendem System installieren können. Der Versuch, den Puppeteer Adapter zu installieren gibt mir folgende Rückmeldung:$ iobroker add puppeteer auto --host IpsServerWB --debug NPM version: 10.8.2 Installing iobroker.puppeteer@0.3.0... (System call) npm error code EBUSY npm error A complete log of this run can be found in: C:\WINDOWS\system32\config\systemprofile\AppData\Local\npm-cache\_logs\2024-09-06T05_46_44_817Z-debug-0.log host.IpsServerWB Cannot install iobroker.puppeteer@0.3.0: 4294963214 ERROR: Process exited with code 25
Der komplette Log umfasst über 8000 Zeilen, ich hänge ihn hier als Datei ran.
2024-09-06T05_46_44_817Z-debug-0.logWenn ich mir die Log Datei anschaue, dann verstehe ich meistens nur Bahnhof, aber irgendwie beschleicht mich das Gefühl, an meinem System ist immer noch was im Argen.
-
hm, der konkrete fehler ist der
7083 verbose stack Error: EBUSY: resource busy or locked, rename 'C:\ioBroker\node_modules\iobroker.admin' -> 'C:\ioBroker\node_modules\.iobroker.admin-GBn0lhRQ'
da wird versucht das verzeichnis umzubenennen. jetzt bin ich nicht firm im detailprozess der adapter installation. umgehen kannst du das, indem du den iobroker stoppst, prüfst ob iobroker wirklich beendet ist und dann von der kommandozeile aus installierst.
ich hab mal noch das fix kommando hinzugefügt, das prüft deine installation ob die richtigen berechtigungen überall gesetzt sind.
durch deine wilden npm befehle hast du sicherlich auch mal mit sudo gearbeitet, weil linux wegen berechtigung gemeckert hat?iobroker stop iobroker fix iobroker isrun iobroker install iobroker.puppeteer iobroker start
der adapter ist dann installiert, eine neue instanz musst du dann noch selbst von der adapterseite aus erzeugen
-
@oliverio
Ist ein Windows System, nix sudo.
Die Variante mit Anhalten des Systems habe ich ja bereits mehrmals gemacht.
Ich würde gerne erst mal klären, warum sich der Adapter nicht mit laufendem System installieren läßt, ich denke, das ist nicht normal.
Es sei denn, jemand kann erklären, warum das so ist.
Ein iob fix kann ich aber morgen mal machen, mal sehen, was da so passiert.
Und falls jemand erklären kann, ob die vielen Meldungen im npm Log so ihre Richtigkeit haben, das wäre auch eine prima Sache. -
Im npm log wird detailliert berichtet was
Alles bei der Installation gemacht wird.
Von daher erstmal alles ok, bis auf die eine FehlermeldungDas 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 -
@oliverio
Ok, dann mal mit stoppenc:\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. -
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: -
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
-
Und was mir noch auffällt, ich habe kein admin.0, sondern nur ein admin.1
Das ist doch auch nicht normal, oder? -
Nach Einrichten der Istanz admin.0 und Löschen von admin.1 kann ich die Skripte jetzt wieder problemlos exportieren.
-
@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? -
@oliverio
NUC i5 mit SSD -
@jensen
Ne dann ist es eher unwahrscheinlich das die Platte was hat -
@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. -
@jensen
Kannst du mir mal komplette Beispiele geben?
Verwendest du sendto oder die datenpunkte?
Ich versuche das mal nachzustellen -
@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
Im Benutzer Verzeichnis C:\Users\IpsJensen.cache\puppeteer\chrome
Wie sind da die Zusammenhänge?
Wer installiert was wann wo, und wo wird entschieden, was benutzt wird? -
@foxriver76
Könntest Du vielleicht einem Ahnungslosen etwas weiter helfen?
Ich weiß hier einfach nicht weiter. -
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
-
@jensen sagte in Puppeteer Adapter:
also flot funktioniert bei mir
msn weather eigentlich auch, allerdings erhalte ich mit puppeteer nur die folgende seite
link ist
https://www.msn.com/en-us/weather/forecast/in-Frankfurt,Hesseaufgrund des net_err vermute ich, das irgendwas mit dem abruf der daten von deinem nuc nicht passt.
probiere es mal direkt von dort mit curlum 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