Hallo Zusammen,
ich habe jetzt schon seit ein paar Tagen ein Problem mit meinem Raspberry Pi und Selenium, welches ich nicht gelöst kriege.
Was ich erreichen möchte:
Ich habe ein NodeJs Express Anwendung, welche mehrere API-Endpunkte hat.
Wenn einer dieser Endpunkte aufgerufen wird, soll sich ein Chromium Webbrowser Fenster auf meinem RPI öffnen und dort weiterer Code ausgeführt werden.
In meinem Fall nutze ich aktuell Selenium und wegen der NodeJs API die Selenium-JS-Library (anstatt wie die meisten Python).
Informationen:
Ich nutze:
Raspberry Pi 3B v1.2
RaspberryPi OS (Bullseye) 64 Bit (auch schon mit 32 Bit probiert)
Installationen:
- Ganzen Node Kram für die API, die aber ganz normal funktioniert
- Chromium Webbrowser (98.0.4758.106) war schon installiert
- Chromium Webdriver: sudo apt-get install chromium-chromedriver
- Selenium-JS-Library: npm install selenium-webdriver
Mein Beispiel- / Test-Code:
const { Builder } = require("selenium-webdriver");
const chrome = require('selenium-webdriver/chrome');
(async function(){
let options = new chrome.Options();
let driver = await new Builder()
.forBrowser('chrome')
.setChromeOptions(options)
.build();
await driver.get('https://www.google.com');
await driver.quit();
})()
Display More
Das Problem: (siehe Screenshot)
Beim Ausführen des Codes öffnet sich zwar der Chromium Webbrowser, aber dieser lädt sich tot bis es einen Timeout gibt (selbst nach mehreren Minuten tut sich nichts).
Während er lädt hat er oben in der Adresszeile nur "data:," stehen.
Ich habe schon mehrere Beispiel-Codes aus dem Internet kopiert und getestet, aber nichts scheint zu funktionieren
Als letzte Option wäre auch eine Alternative zu Selenium für mich okay. Wobei ich da auch nichts gutes finden konnte, was gleichzeitig gut mit Node harmoniert.
Hat jemand eine Idee?
Liegt es vielleicht am RPI? (zu alt?)
Vielen Dank schonmal für eure Hilfe!