NEWS
Puppeteer: Screenshots PhantomJS Alternative
-
@foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:
Komisch, dass er nur top level zeigt
Das ist seit npm8 so.
-
@jojo182 Unter Javascript liegt nach wie vor ein Puppeteer 16.2.0. Ich vermute nach wie vor, dass sich da irgendetwas beißt.
Evtl. hilft
cd /opt/iobroker/node_modules/iobroker.javascript npm uninstall puppeteer
-
@foxriver76 Leider kein Erfolg, immernoch die gleiche Fehlermeldung. Da wird wohl mehr im Argen liegen
npm ls --depth=4 | grep "pup" ├─┬ iobroker.puppeteer@0.2.6 │ └─┬ puppeteer@13.7.0
-
@jojo182 Scheint als ist da noch was mit ARM + Puppeteer nicht out of the box kompatibel. Ich schaue es mir nochmal an.
-
@foxriver76 Von mir ein kleines Update. Ich habe von meinem Raspi Backup Image von letzter Woche das puppeteer module kopiert, jetzt geht es zumindest wieder direkt über Javascript, der Puppeteer Adapter mag wohl diese Version gar nicht. Fehlermeldung teilweise sehr cryptisch. Weiß nicht ob für dich relevant.
-
@jojo182 Zeig mal gerne jetzt die Version via dem vorherigen Kommando.
Und zeig mir gerne mal wie du im Skript Puppeteer startest. Wenn der mitgelieferte Browser dort funktioniert ist es komisch.
-
@foxriver76 Gerne:
npm ls --depth=4 | grep "pup" ├─┬ iobroker.puppeteer@0.2.6 │ └─┬ puppeteer@13.1.1 invalid: "^13.7.0" from node_modules/iobroker.puppeteer │ ├── devtools-protocol@0.0.981744 invalid: "0.0.948846" from node_modules/puppeteer │ ├─┬ https-proxy-agent@5.0.1 invalid: "5.0.0" from node_modules/puppeteer npm ERR! code ELSPROBLEMS npm ERR! extraneous: cross-fetch@3.1.5 /opt/iobroker/node_modules/cross-fetch npm ERR! invalid: puppeteer@13.1.1 /opt/iobroker/node_modules/puppeteer npm ERR! invalid: devtools-protocol@0.0.981744 /opt/iobroker/node_modules/devtools-protocol npm ERR! invalid: https-proxy-agent@5.0.1 /opt/iobroker/node_modules/puppeteer/node_modules/https-proxy-agent
const puppeteer = require("puppeteer"); async function run () { var url = "https://...."; const browser = await puppeteer.launch({executablePath: '/usr/bin/chromium-browser'}); const page = await browser.newPage(); await page.goto(url); await sleep(10000) await page.mouse.click(210, 210) await sleep(10000) await page.screenshot({path: '/opt/iobroker/wetter.png'}); browser.close(); }
puppeteer ist in der JS Adapter Admin Seite nicht hinzugefügt, damit es nicht wieder überschrieben wird beim nächsten Update.
-
@jojo182 Hm ja, du gibst den executable path an, das habe ich auch gelesen für Pi's
https://chsamii.medium.com/puppeteer-on-raspbian-nodejs-3425ccea470e
Ich überlege mir mal wie ich das am nutzerfreundlichsten lösen kann.
-
Das schleppt halt nur eine komplette X bzw. Desktopumgebung an.
-
Hallo,
gibt es eine Möglichkeit, wie ich im blocky skript den nächsten Schritt erst ausführen kann, wenn Puppeteer das Bild erstellt hat und das zurückmeldet?
VIelen Dank und Gruß
-
Habs gefunden.
Einfach den Haken bei Ergebniss setzen und dann kann ich das Result abfragen....;-)
-
EIDt - hat sich eredigt
statt minütlich war ein stern zuviel in cron- habe das sekündlich aufgerufen
-
@liv-in-sky LastTest für Dein System?
-
@apollon77 das darfst du glauben - da ging garnix mehr und nur wegen einem kleinen sternchen
das fiese war, das am anfang nur den js-controller bei 136.% gesehen habe und ich nur merkte, das ich keine admin tabs mehr bedienen kann - dann dachte ich , evtl hat sich mein admin adapter irgendwie verabschiedet. bis ich auf die idee kam, mein letzt-erstelltes script mal zu deaktivieren -
@foxriver76
Wollte nur mal Danke sagen für diesen funktionellen Adapter.
Damit ist es mir sehr schnell gelungen, von PhantomJS auf Puppeteer umzustellen und meine images für emails wieder zu erzeugen, nachdem der PhantomJS vor einer Woche aus unbekannten Gründen nicht mehr wollte.
Du hast mir den Tag gerettet, Danke.
Gruß Jens -
Ich muß mich noch mal melden.
Ab und zu passiert es immer noch, daß Images nicht korrekt erzeugt werden.
Sind vielleicht manchmal die Flot Ladezeiten zu lang?
Was kann man noch versuchen?
Hier im Beispiel ist eine von vier Graphiken nicht in Ordnung. Und das passiert auch wirklich sehr selten, vielleicht alle paar Tage mal, wo ich mir am Tag zu jeder Stunde emails mit Graphiken generiere.
Ärgerlich ist es trotzdem.
ich hab jetzt mal renderTime: 500 eingefügt, mal schauen, ob's hilft
-
@jensen mache das mit größerer wait time - hatte nie ein thema damit
-
@liv-in-sky
ok, danke, ist einen versuch Wert -
ich hätte da ein Problem
direkt frisch installiert
iobroker läuft in VM auf proxmox
-
@arteck Bitte in Zukunft in Code Tags oder irgendeiner Form in der ich die Meldung direkt kopieren kann.
Läuft iob in Docker?