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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Puppeteer: Screenshots PhantomJS Alternative

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bimmi @Guest last edited by

      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

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @bimmi last edited by

        @bimmi

        hast du mal versucht, das file unter dem /opt/iobroker/ ordner zu speichern - iobroker hat evtl keine rechte auf /var/......

        B 1 Reply Last reply Reply Quote 0
        • B
          bimmi @liv-in-sky last edited by bimmi

          @liv-in-sky doch, ich sehe ja am Zeitstempel, dass die Datei aktualisiert wurde! 2be335d2-be1f-40b2-9a85-012bbd2d909c-image.png ich habe den user iobroker dem Verzeichnis hinzugefügt.

          liv-in-sky 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @bimmi last edited by

            @bimmi

            hier mal ein beispiel zum import - verstehst du, was ich damit meine ? evtl musst duden parameter so angeben

            <block xmlns="https://developers.google.com/blockly/xml" type="sendto_custom" id="b+yzc}s4ouYY:E}r`WrK" x="63" y="-312">
             <mutation xmlns="http://www.w3.org/1999/xhtml" items="clip" with_statement="false"></mutation>
             <field name="INSTANCE">puppeteer.0</field>
             <field name="COMMAND">send</field>
             <field name="LOG"></field>
             <field name="WITH_STATEMENT">FALSE</field>
             <value name="ARG0">
               <shadow type="text" id="z#Yfm!fw[pLKZWJI#h?o">
                 <field name="TEXT">{ x: number,y: number, width: number, height: number        }</field>
               </shadow>
             </value>
            </block>
            

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @bimmi last edited by

              @bimmi

              wenn du dein und mein blockly im scriptmode ansiehst, siehst duden unterschied

              B 1 Reply Last reply Reply Quote 1
              • B
                bimmi @liv-in-sky last edited by

                @liv-in-sky DANKE

                de91f098-7b20-47de-ad84-bc2d2870ed26-image.png

                Endlich!!!! Als Text direkt eingeben, so ähnlich hatte ich es schon, jedoch ohne x,y,width und heigh.

                VIELEN DANK!

                liv-in-sky 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @bimmi last edited by liv-in-sky

                  @bimmi

                  ich würde es so machen

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="=|-HU{v0HPlybOQ*ghcR">mypath</variable>
                     <variable id="(O?~p(`|c|(KIhiht#i*">myurl</variable>
                     <variable id="Kg9b=20h)E,riQJeDEcb">myheight</variable>
                     <variable id="d?/+]%mL0t@pakXBBv]V">mywidth</variable>
                     <variable id="ELianL7RIoI]6v](.5H{">clipx</variable>
                     <variable id="v7~-E}:`3zaZ=MG;7P=[">clipy</variable>
                     <variable id="WKu^.B?9T66xQ_qJgB@2">clipwidth</variable>
                     <variable id="$JY/m%d:K3q{;2o7?$9r">clipheight</variable>
                   </variables>
                   <block type="procedures_defcustomnoreturn" id="{{Bl:d;+8eDTq,0~J9H2" x="237" y="112">
                     <mutation statements="false">
                       <arg name="mypath" varid="=|-HU{v0HPlybOQ*ghcR"></arg>
                       <arg name="myurl" varid="(O?~p(`|c|(KIhiht#i*"></arg>
                       <arg name="myheight" varid="Kg9b=20h)E,riQJeDEcb"></arg>
                       <arg name="mywidth" varid="d?/+]%mL0t@pakXBBv]V"></arg>
                       <arg name="clipx" varid="ELianL7RIoI]6v](.5H{"></arg>
                       <arg name="clipy" varid="v7~-E}:`3zaZ=MG;7P=["></arg>
                       <arg name="clipwidth" varid="WKu^.B?9T66xQ_qJgB@2"></arg>
                       <arg name="clipheight" varid="$JY/m%d:K3q{;2o7?$9r"></arg>
                     </mutation>
                     <field name="NAME">machePhoto</field>
                     <field name="SCRIPT">c2VuZFRvKCdwdXBwZXRlZXIuMCcsICdzY3JlZW5zaG90JywgeyANCg0KICAgIHVybDogbXl1cmwgLA0KDQogICAgcGF0aDogbXlwYXRoICwgDQoNCiAgICB3aWR0aDpteXdpZHRoLA0KDQogICAgaGVpZ2h0Om15aGVpZ2h0LA0KDQogICAgd2FpdEZvclRpbWVvdXQ6IDUwMDAsDQogICAgZnVsbFBhZ2U6IGZhbHNlLA0KDQogICAgY2xpcDogeyAgICAgICAgIA0KICAgICAgICB4OiBjbGlweCwNCiAgICAgICAgeTogY2xpcHksDQogICAgICAgIHdpZHRoOiBjbGlwd2lkdGgsDQogICAgICAgIGhlaWdodDogY2xpcGhlaWdodA0KICAgICAgfQ0KDQp9KTs=</field>
                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                   </block>
                   <block type="procedures_callcustomnoreturn" id="a8y(c@2xKnJ~R;]2^j%W" x="238" y="162">
                     <mutation name="machePhoto">
                       <arg name="mypath"></arg>
                       <arg name="myurl"></arg>
                       <arg name="myheight"></arg>
                       <arg name="mywidth"></arg>
                       <arg name="clipx"></arg>
                       <arg name="clipy"></arg>
                       <arg name="clipwidth"></arg>
                       <arg name="clipheight"></arg>
                     </mutation>
                     <value name="ARG0">
                       <block type="text" id="M;V!K{lzb0v+Suf3#:h#">
                         <field name="TEXT">/opt/iobroker/iobrokerSonder.png</field>
                       </block>
                     </value>
                     <value name="ARG1">
                       <block type="text" id="]1VeRv!bUZ%*eY/@f|qo">
                         <field name="TEXT">http://192.168.178.59:8082/vis/index.html?handyBildAnzeige#sonderfahrt</field>
                       </block>
                     </value>
                     <value name="ARG2">
                       <block type="math_number" id="pJ;U)F%hQSRoloOZ6~/8">
                         <field name="NUM">430</field>
                       </block>
                     </value>
                     <value name="ARG3">
                       <block type="math_number" id="piulWX_fca8nyM2RvyJt">
                         <field name="NUM">645</field>
                       </block>
                     </value>
                     <value name="ARG4">
                       <block type="math_number" id="%D9jOfghJtgT{T{T7_sd">
                         <field name="NUM">0</field>
                       </block>
                     </value>
                     <value name="ARG5">
                       <block type="math_number" id="AZ5@9Rh4%Q*{L9y9]_nY">
                         <field name="NUM">0</field>
                       </block>
                     </value>
                     <value name="ARG6">
                       <block type="math_number" id="6dhDISS~rt[_YD@OY@5e">
                         <field name="NUM">430</field>
                       </block>
                     </value>
                     <value name="ARG7">
                       <block type="math_number" id="+c`W$l4gL{m}q3cozn]*">
                         <field name="NUM">645</field>
                       </block>
                     </value>
                   </block>
                  </xml>
                  

                  Image 138.png

                  so kann man seine settings besser eingeben

                  B 1 Reply Last reply Reply Quote 1
                  • B
                    bimmi @liv-in-sky last edited by

                    @liv-in-sky ja so sieht es auch echt gut aus. dann hab ich wenigstens meine Datenpunkte Verwenden 👍👍👍👍

                    was ich aber auch nicht hinbekomme ist das waitforselector. das hab ich eingefügt wie die anderen Einträge und wird nicht übernommen...

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      bimmi @bimmi last edited by

                      mein script sieht inzwischen so aus:

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <variables>
                          <variable id="=|-HU{v0HPlybOQ*ghcR">mypath</variable>
                          <variable id="(O?~p(`|c|(KIhiht#i*">myurl</variable>
                          <variable id="Kg9b=20h)E,riQJeDEcb">myheight</variable>
                          <variable id="d?/+]%mL0t@pakXBBv]V">mywidth</variable>
                          <variable id="ELianL7RIoI]6v](.5H{">clipx</variable>
                          <variable id="v7~-E}:`3zaZ=MG;7P=[">clipy</variable>
                          <variable id="WKu^.B?9T66xQ_qJgB@2">clipwidth</variable>
                          <variable id="$JY/m%d:K3q{;2o7?$9r">clipheight</variable>
                          <variable id="*^L*3Kju!MAP#u`QL(gE">myselector</variable>
                          <variable id="8,q0AR=qke3-k-JCj-2U">quality</variable>
                        </variables>
                        <block type="procedures_defcustomnoreturn" id="{{Bl:d;+8eDTq,0~J9H2" x="938" y="113">
                          <mutation statements="false">
                            <arg name="mypath" varid="=|-HU{v0HPlybOQ*ghcR"></arg>
                            <arg name="myurl" varid="(O?~p(`|c|(KIhiht#i*"></arg>
                            <arg name="myheight" varid="Kg9b=20h)E,riQJeDEcb"></arg>
                            <arg name="mywidth" varid="d?/+]%mL0t@pakXBBv]V"></arg>
                            <arg name="clipx" varid="ELianL7RIoI]6v](.5H{"></arg>
                            <arg name="clipy" varid="v7~-E}:`3zaZ=MG;7P=["></arg>
                            <arg name="clipwidth" varid="WKu^.B?9T66xQ_qJgB@2"></arg>
                            <arg name="clipheight" varid="$JY/m%d:K3q{;2o7?$9r"></arg>
                            <arg name="myselector" varid="*^L*3Kju!MAP#u`QL(gE"></arg>
                            <arg name="quality" varid="8,q0AR=qke3-k-JCj-2U"></arg>
                          </mutation>
                          <field name="NAME">macheScreenshot</field>
                          <field name="SCRIPT">c2VuZFRvKCdwdXBwZXRlZXIuMCcsICdzY3JlZW5zaG90JywgeyANCg0KICAgIHVybDogbXl1cmwgLA0KDQogICAgcGF0aDogbXlwYXRoICwgDQoNCiAgICB3aWR0aDpteXdpZHRoLA0KDQogICAgcXVhbGl0eTpxdWFsaXR5LA0KDQogICAgaGVpZ2h0Om15aGVpZ2h0LA0KDQogICAgd2FpdEZvclNlbGVjdG9yOm15c2VsZWN0b3IsDQoNCiAgICBmdWxsUGFnZTogZmFsc2UsDQoNCiAgICBjbGlwOiB7ICAgICAgICAgDQogICAgICAgIHg6IGNsaXB4LA0KICAgICAgICB5OiBjbGlweSwNCiAgICAgICAgd2lkdGg6IGNsaXB3aWR0aCwNCiAgICAgICAgaGVpZ2h0OiBjbGlwaGVpZ2h0DQogICAgICB9DQp9KTs=</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                        </block>
                        <block type="procedures_callcustomnoreturn" id="a8y(c@2xKnJ~R;]2^j%W" x="938" y="163">
                          <mutation name="macheScreenshot">
                            <arg name="mypath"></arg>
                            <arg name="myurl"></arg>
                            <arg name="myheight"></arg>
                            <arg name="mywidth"></arg>
                            <arg name="clipx"></arg>
                            <arg name="clipy"></arg>
                            <arg name="clipwidth"></arg>
                            <arg name="clipheight"></arg>
                            <arg name="myselector"></arg>
                            <arg name="quality"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="get_value" id="@$eoRt:vgP2{$;eeUch0">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Test.Display-Bildpfad</field>
                            </block>
                          </value>
                          <value name="ARG1">
                            <block type="get_value" id="xlb5GgfuCSWL[Aergw[6">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Test.Display-Ziel-URL</field>
                            </block>
                          </value>
                          <value name="ARG4">
                            <block type="math_number" id="%D9jOfghJtgT{T{T7_sd">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG5">
                            <block type="math_number" id="AZ5@9Rh4%Q*{L9y9]_nY">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG6">
                            <block type="get_value" id="s$Lxum-=aMz`$(5TWW3%">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Test.Display-Breite</field>
                            </block>
                          </value>
                          <value name="ARG7">
                            <block type="get_value" id="P%oRRt;f$Ke}@s`ANY}B">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Test.Display-Höhe</field>
                            </block>
                          </value>
                          <value name="ARG8">
                            <block type="text" id="{3cIh]jtoaLdIe)!9Vp+">
                              <field name="TEXT">#w00098</field>
                            </block>
                          </value>
                          <value name="ARG9">
                            <block type="math_number" id="|nkrAt*)GrI|sQV(?^Bz">
                              <field name="NUM">100</field>
                            </block>
                          </value>
                        </block>
                      </xml>
                      

                      922a2ff9-e017-4dbd-9c5c-2f3703743186-image.png

                      liv-in-sky 2 Replies Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @bimmi last edited by

                        @bimmi

                        zum einem - du solltest keine variablen am function-aufruf weglassen bzw leer lassen - zur not mache :

                        Image 139.png

                        @bimmi sagte in Puppeteer: Screenshots PhantomJS Alternative:

                        waitforselector

                        habe ich noch nicht genutzt - da wird er wohl ein element der html seite abwarten - ich nehme anstatt waitForTimeout - einfach mal die seite öffnen und schauen wie lange sie braucht. du gibst da ein widget id an -weiß nicht, ob das so funktioniert - wie stellst du das eigentlich fest, das puppeteer nict auf das widget wartet

                        wenn ich zeit habe teste ich mal waitForSelector - oder evtl kann uns @foxriver76 ein paar tipps geben

                        1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @bimmi last edited by

                          @bimmi

                          habe gerade auch bei mir einen fehler gesehen - so sollten die waitoption angegeben werden:

                          Image 142.png

                          webseite:

                          Image 143.png

                          blockly:

                          Image 144.png

                          habe jetzt keine fehler mehr - scheint so zu funktionieren

                          B 1 Reply Last reply Reply Quote 1
                          • B
                            bimmi @liv-in-sky last edited by

                            @liv-in-sky vielen Dank! Ich teste das heute Abend. ich mag den selector. das ist aus der Vis immer das letzte hinzugefügte Widget. Bei mir wäre es für #w00098. dann macht er einen Screenshot sobald der da ist.

                            Mein Webserver ist zwar echt schnell aber manchmal muss man auf Werte warten. daher ist der selector schon gut.

                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @bimmi last edited by

                              @bimmi
                              da gebe ich dir recht - habe ehrlich gesagt nie darauf geachtet - aber jetzt habe ich es mal eingestellt - heute morgen hat es funktioniert und konnte bild immer auf dem handy im auto anzeigen 🙂

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                bimmi @liv-in-sky last edited by bimmi

                                @liv-in-sky funktioniert perfekt! Genau wie ich es haben will! Im Prinzip ging es mir um die Qualität. Die kleinen E-INK Displays zeigen die Grafik besser an mit 100% Qualität bei der JPG Generierung!

                                1 Reply Last reply Reply Quote 1
                                • D
                                  dwm last edited by

                                  Nachdem ich auch gern VIS und Grafana screens in Status-Reports verwenden würde, hab ich heute mal puppeteer ausprobiert:
                                  Puppeteer startet nicht, und liefert folgende Fehler im log:

                                  eteer.0
                                  2023-10-27 11:26:04.506	error	Failed to launch the browser process![1027/112604.128429:FATAL:zygote_host_impl_linux.cc(127)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x564aa1039f72 base::debug::CollectStackTrace()#1 0x564aa10264b3 base::debug::StackTrace::StackTrace()#2 0x564aa0f78fbf logging::LogMessage::~LogMessage()#3 0x564a9f795c16 content::ZygoteHostImpl::Init()#4 0x564aa04cfb23 content::ContentMainRunnerImpl::Initialize()#5 0x564aa04cd427 content::RunContentProcess()#6 0x564aa04cd606 content::ContentMain()#7 0x564aa0ab71fa headless::HeadlessShellMain()#8 0x564a9cbee255 ChromeMain#9 0x7fbbe3716d0a __libc_start_main#10 0x564a9cbee02a _startTROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  
                                  puppeteer.0
                                  2023-10-27 11:26:04.505	error	Error: Failed to launch the browser process![1027/112604.128429:FATAL:zygote_host_impl_linux.cc(127)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x564aa1039f72 base::debug::CollectStackTrace()#1 0x564aa10264b3 base::debug::StackTrace::StackTrace()#2 0x564aa0f78fbf logging::LogMessage::~LogMessage()#3 0x564a9f795c16 content::ZygoteHostImpl::Init()#4 0x564aa04cfb23 content::ContentMainRunnerImpl::Initialize()#5 0x564aa04cd427 content::RunContentProcess()#6 0x564aa04cd606 content::ContentMain()#7 0x564aa0ab71fa headless::HeadlessShellMain()#8 0x564a9cbee255 ChromeMain#9 0x7fbbe3716d0a __libc_start_main#10 0x564a9cbee02a _startTROUBLESHOOTING: https://pptr.dev/troubleshooting at Interface.onClose (/opt/iobroker/node_modules/@puppeteer/browsers/lib/cjs/launch.js:262:24) at Interface.emit (node:events:526:35) at Interface.close (node:internal/readline/interface:533:10) at Socket.onend (node:internal/readline/interface:259:10) at Socket.emit (node:events:526:35) at endReadableNT (node:internal/streams/readable:1359:12) at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
                                  
                                  puppeteer.0
                                  2023-10-27 11:26:04.503	error	unhandled promise rejection: Failed to launch the browser process![1027/112604.128429:FATAL:zygote_host_impl_linux.cc(127)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x564aa1039f72 base::debug::CollectStackTrace()#1 0x564aa10264b3 base::debug::StackTrace::StackTrace()#2 0x564aa0f78fbf logging::LogMessage::~LogMessage()#3 0x564a9f795c16 content::ZygoteHostImpl::Init()#4 0x564aa04cfb23 content::ContentMainRunnerImpl::Initialize()#5 0x564aa04cd427 content::RunContentProcess()#6 0x564aa04cd606 content::ContentMain()#7 0x564aa0ab71fa headless::HeadlessShellMain()#8 0x564a9cbee255 ChromeMain#9 0x7fbbe3716d0a __libc_start_main#10 0x564a9cbee02a _startTROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  

                                  Die Umgebung ist ein buanet/iobroker Docker container, Version 8.1.0, also ein Debian 11.
                                  Die package-installation ist durchgelaufen, die sind alle installiert.

                                  Kleine Anmerkung zu den Packages: In dem Image wird standardmäßig die apt package Liste gelöscht, vermutlich um Platz im Filesystem zu sparen. Deswegen muss man vor der puppeteer Installation manuell ein

                                  apt-get update
                                  

                                  aufrufen, dann werden die Listen wieder installiert, und apt-get install ... funktioniert.

                                  Aber zum jetzigen "no useable sandbox" Fehler fällt mir grad nix ein ... gibts eventuell Ideen?
                                  Dank
                                  Werner

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

                                    @dwm

                                    da hatte ich mich letztes Jahr auch mal mit befasst... es gab n Parameter den man setzen konnte.. aber bei mir half das auch nicht..
                                    Denke, das geht nicht im Docker.

                                    1 Reply Last reply Reply Quote 0
                                    • arteck
                                      arteck Developer Most Active last edited by

                                      da müsste doch @andre was zu sagen können

                                      andre 1 Reply Last reply Reply Quote 0
                                      • D
                                        dwm last edited by

                                        Muss da mal bisschen damit experimentieren, möglichst nicht auf dem "Production" System ;), aber dafür ist Docker ja perfekt.

                                        Es gibt auf jeden Fall mal das puppeteer-troubleshooting als Ansatzpunkt:
                                        https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#setting-up-chrome-linux-sandbox

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

                                          @arteck sagte in Puppeteer: Screenshots PhantomJS Alternative:

                                          da müsste doch @andre was zu sagen können

                                          Wenn ich das hier so lese, dann wird puppeteer nicht out of the box in docker laufen...

                                          https://dev.to/cloudx/how-to-use-puppeteer-inside-a-docker-container-568c

                                          Eventuell ist es notwendig den Container entsprechend vorzubereiten. Ggf. mit einem benutzerdefinierten Startscript.

                                          MfG,
                                          André

                                          1 Reply Last reply Reply Quote 0
                                          • F
                                            Freak @Neuschwansteini last edited by

                                            @ilovegym said in Puppeteer: Screenshots PhantomJS Alternative:

                                            @foxriver76

                                            Bin am Tablett mit meinen dicken Fingern.. verwende den buanet Docker mit Node 16
                                            hier beim installieren:

                                            host.iobroker
                                            2023-03-18 21:09:38.495	info	iobroker npm WARN deprecated puppeteer@13.7.0: < 19.2.0 is no longer supported
                                            
                                            

                                            Dann beim starten des Adapter:

                                            
                                            puppeteer.0
                                            2023-03-18 21:10:24.951	error	Error: Failed to launch the browser process![0318/211024.570664:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x55aca5667b89 base::debug::CollectStackTrace()#1 0x55aca55cc433 base::debug::StackTrace::StackTrace()#2 0x55aca55df330 logging::LogMessage::~LogMessage()#3 0x55aca35c499b content::ZygoteHostImpl::Init()#4 0x55aca5175372 content::ContentMainRunnerImpl::Initialize()#5 0x55aca5173439 content::RunContentProcess()#6 0x55aca517358e content::ContentMain()#7 0x55aca51ced7a headless::(anonymous namespace)::RunContentMain()#8 0x55aca51cea85 headless::HeadlessShellMain()#9 0x55aca1c323e8 ChromeMain#10 0x7effdda9dd0a __libc_start_main#11 0x55aca1c3222a _startTROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md at onClose (/opt/iobroker/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js:241:20) at Interface.<anonymous> (/opt/iobroker/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js:231:68) at Interface.emit (node:events:525:35) at Interface.close (node:readline:590:8) at Socket.onend (node:readline:280:10) at Socket.emit (node:events:525:35) at endReadableNT (node:internal/streams/readable:1358:12) at processTicksAndRejections (node:internal/process/task_queues:83:21)
                                            
                                            puppeteer.0
                                            2023-03-18 21:10:24.950	error	unhandled promise rejection: Failed to launch the browser process![0318/211024.570664:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x55aca5667b89 base::debug::CollectStackTrace()#1 0x55aca55cc433 base::debug::StackTrace::StackTrace()#2 0x55aca55df330 logging::LogMessage::~LogMessage()#3 0x55aca35c499b content::ZygoteHostImpl::Init()#4 0x55aca5175372 content::ContentMainRunnerImpl::Initialize()#5 0x55aca5173439 content::RunContentProcess()#6 0x55aca517358e content::ContentMain()#7 0x55aca51ced7a headless::(anonymous namespace)::RunContentMain()#8 0x55aca51cea85 headless::HeadlessShellMain()#9 0x55aca1c323e8 ChromeMain#10 0x7effdda9dd0a __libc_start_main#11 0x55aca1c3222a _startTROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md
                                            
                                            

                                            Ich habe leider das gleiche Problem. Konntest du das irgendwie lösen?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            473
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            browser headless phantomjs puppeteer screenshot screenshots website
                                            23
                                            245
                                            25541
                                            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