Posts by Kurt_Wallander

    Hallo,


    einige Tage habe ich vergeblich versucht, Selenium mit Chromium auf dem aktuellen Raspberry Pi OS zum Laufen zu bringen. Da scheint es eine Inkompatibilität zu geben, die ich nicht gefixt bekam. Siehe dazu diesen Thread:



    Ein Rückschwenk auf Firefox und Geckodriver, den ich bis dahin jahrelang genutzt hatte, war zunächst auch erfolglos, da die letzte offizielle ARM-Version aus dem Geckodriver-Repo sich nicht mit dem aktuellen Firefox-ESR verträgt.


    https://github.com/mozilla/geckodriver/releases/tag/v0.23.0


    Beim Raspberry Pi OS ist der Geckodriver inzwischen ja nicht mehr im Repository. Mit einem „dirty trick“ bin ich dann aber doch noch zum Ziel gekommen: Ich habe mir zunutze gemacht, dass sich der Geckodriver - sogar in der jüngsten Version - beim Ubuntu-Derivat für den RPI ganz einfach über den Paketmanager installieren lässt. Da ich das System eh frisch aufgesetzt hatte, habe ich probehalber ein Ubuntu installiert (Ubuntu Server 20.04.4 LTS) und dort den Geckodriver installiert:


    sudo apt-get install firefox-geckodriver


    Das Geckodriver-Binary aus dem Verzeichnis /usr/bin habe ich mir anschließend lokal auf meinen Rechner kopiert, anschließend wieder das Rasperry Pi OS installiert und die Kopie des Geckodriver-Binaries zurückgespielt in den Ordner /usr/bin auf dem frisch installierten System. Et voilà, läuft anstandslos!


    Hier meine aktuelle Konstellation:


    Raspberry Pi 3, Model 3B+
    Linux 5.10.103-v7+ armv71
    Debian version 11 (bullseye)
    Mozilla Firefox 91.7.0esr
    geckodriver 0.30.0
    Selenium 4.0.0a1
    Python 3.9.2


    Ich hoffe, ich kann damit jemandem helfen und einige Stunden Recherche und Experimentieren ersparen.


    Cheerio!

    Hallo,


    es ist dann ja doch immer wieder schön zu sehen, dass man mit den Problemen nicht allein da steht ;)


    Ähnliches Setting hier:


    Raspberry Pi 3

    Chromium 98.0.4758.106 Built on Raspbian , running on Raspbian 11

    ChromeDriver 98.0.4758.106 (462b8b4604ca1ec7f055fbce0d452172edee96f9-refs/branch-heads/4758@{#1161})


    Chromium und Chromedriver installiert über den Paket-Manager, auch rumgespielt mit anderen Versionen aus dieser Quelle:

    https://github.com/electron/electron/tags


    Hat alles nichts gebracht. Aufruf über Python, aber mit demselben Ergebnis:


    Interessant ist: Selbst wenn ich in dem vom Chromedriver geöffneten Browserfenster eine Adresse eingebe, wird diese nicht aufgerufen. Es scheint also so zu sein, dass der Chromedriver keinen Zugang zum Internet hat.


    Hier die Fehlermeldung, die ich ausgespuckt bekomme, wenn ich lange genug warte:


    pi@endzeit:~/endzeit $ ./test.py

    Traceback (most recent call last):

    File "/home/pi/endzeit/./test.py", line 29, in <module>

    main()

    File "/home/pi/endzeit/./test.py", line 24, in main

    browser = webdriver.Chrome(service=s, options=options)

    File "/usr/lib/python3/dist-packages/selenium/webdriver/chrome/webdriver.py", line 95, in __init__

    RemoteWebDriver.__init__(

    File "/usr/lib/python3/dist-packages/selenium/webdriver/remote/webdriver.py", line 152, in __init__

    self.start_session(capabilities, browser_profile)

    File "/usr/lib/python3/dist-packages/selenium/webdriver/remote/webdriver.py", line 249, in start_session

    response = self.execute(Command.NEW_SESSION, parameters)

    File "/usr/lib/python3/dist-packages/selenium/webdriver/remote/webdriver.py", line 318, in execute

    self.error_handler.check_response(response)

    File "/usr/lib/python3/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response

    raise exception_class(message, screen, stacktrace)

    selenium.common.exceptions.SessionNotCreatedException: Message: session not created

    from timeout: Timed out receiving message from renderer: 600,000

    (Session info: chrome=98.0.4758.106)


    Auch ich freue mich über jeden sachdienlichen Hinweis.


    Kurt