Selenium - cannot find Chrome binary

DrPils

Bekanntes Mitglied
Hi,
Ich wollte gerade mal Selenium zum Webscrappen austesten. Nun bekomme ich eine Exception
Der Chrome Linux Driver den ich unter https://chromedriver.storage.googleapis.com/index.html?path=97.0.4692.36/ heruntergeladen habe liegt im resources Folder meines Projekts.
OS ist Fedora

Java:
import org.openqa.selenium.chrome.ChromeDriver;

public class Main {
    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "/home/marco/Repositories/test/src/main/resources/chromedriver");
        ChromeDriver chromeDriver = new ChromeDriver();
    }
}

[CODE title="Stacktrace"]SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Starting ChromeDriver 97.0.4692.36 (747e0a0f19c13ca6ee136200f5b097448ae4892f-refs/branch-heads/4692@{#607}) on port 59692
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Response code 500. Message: unknown error: cannot find Chrome binary
Build info: version: '4.1.1', revision: 'e8fcc2cecf'
System info: host: 'fedora', ip: '192.168.178.68', os.name: 'Linux', os.arch: 'amd64', os.version: '5.15.11-200.fc35.x86_64', java.version: '17.0.1'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Command: [null, newSession {capabilities=[Capabilities {browserName: chrome, goog:chromeOptions: {args: [], extensions: []}}], desiredCapabilities=Capabilities {browserName: chrome, goog:chromeOptions: {args: [], extensions: []}}}]
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:126)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:84)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:62)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:156)
at org.openqa.selenium.remote.service.DriverCommandExecutor.invokeExecute(DriverCommandExecutor.java:167)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:142)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:230)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:151)
at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:108)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:104)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:91)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:46)
at net.imarco.Main.main(Main.java:9)

Process finished with exit code 1
[/CODE]
 

Kirby.exe

Top Contributor
Also ich habe Selenium bis jetzt nur in Python genutzt, aber dort musste ich den Binary Pfad meistens im Konstruktor übergeben :)
 

DrPils

Bekanntes Mitglied
Also ich habe Selenium bis jetzt nur in Python genutzt, aber dort musste ich den Binary Pfad meistens im Konstruktor übergeben :)
Hmm
Also hier wird es auch mit no args Konstruktor gezeigt. So wie ich es verstanden habe wird dann der in den Umgebungsvariablen hinterlegte Pfad verwendet. Da ich kein Chrome Browser habe, mache ich das mit System.setProperty.
Ich versuche mal heute Abend noch den Konstruktor mit dem ChromeDriverService Objekt, dem kann ich dann auch einen Pfad übergeben.
 

httpdigest

Top Contributor
Da ich kein Chrome Browser habe, mache ich das mit System.setProperty.
Das ergibt keinen Sinn. Das, was du da per System Property angibst, ist nicht der Pfad zu einem Chrome Browser Binary, sondern nur zu dem entsprechenden Webdriver Executable für Selenium. Wenn du Selenium per Chrome Webdriver verwenden willst, dann brauchst du selbstverständlich auch eine Chrome Installation - also des Browsers selbst.
Wichtig ist hierbei auch, dass du eine Webdriver Version verwendest, die kompatibel zur installierten Browserversion ist.
 

DrPils

Bekanntes Mitglied
Das ergibt keinen Sinn. Das, was du da per System Property angibst, ist nicht der Pfad zu einem Chrome Browser Binary, sondern nur zu dem entsprechenden Webdriver Executable für Selenium. Wenn du Selenium per Chrome Webdriver verwenden willst, dann brauchst du selbstverständlich auch eine Chrome Installation - also des Browsers selbst.
Wichtig ist hierbei auch, dass du eine Webdriver Version verwendest, die kompatibel zur installierten Browserversion ist.
Blöd kann man sein...
Danke für den Hinweis. Ich dachte der driver regelt das alles :D
Funktioniert jetzt so nach Chromium installation
 

DrPils

Bekanntes Mitglied
Also Selenium braucht einen richtigen Web Browser, also kann ich das eigentlich nicht auch einem Server laufen lassen?
Gibt es eine Alternative fuer das scrappen von dynamischen Webseiten?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Selenium . findElement . input Allgemeine Java-Themen 4
P Selenium . getText Problem Allgemeine Java-Themen 9
P Selenium . Probleme ein Iron Icon Element anzusprechen Allgemeine Java-Themen 2
P Selenium Scriipt zeigt Fehler beim Import Allgemeine Java-Themen 3
N Ist Selenium hier das richtige Werkzeug? Allgemeine Java-Themen 1
S Selenium: WebDriverWait braucht zu lange Allgemeine Java-Themen 2
Husamoli345 Jsf-Selenium integration Allgemeine Java-Themen 43
R Java mit Selenium "Geister"Loop Allgemeine Java-Themen 1
E selenium script in Tampermonkey umschreiben Allgemeine Java-Themen 1
N Selenium ChromeDriver TimeOutException Allgemeine Java-Themen 1
1 Problem mit Selenium WebDriver findElement bei Instagram Bot Allgemeine Java-Themen 3
M Selenium JUnit Tests (Auswahl von Testmethoden auswerten) Allgemeine Java-Themen 5
R Selenium im geöffneten Browser Allgemeine Java-Themen 0
B Selenium öffnet nur den Browser Allgemeine Java-Themen 5
D Selenium WebDriver HtmlUnitDriver Problem beim Automatisieren Allgemeine Java-Themen 1
D Verwendung von Selenium Allgemeine Java-Themen 2
A Selenium HtmlUnitDriver CSS Warnings Allgemeine Java-Themen 0
X Selenium - Per Webdriver, Javascript generierte links klicken Allgemeine Java-Themen 0
M HTTP Selenium button klicken Allgemeine Java-Themen 2
J Selenium Referrer Allgemeine Java-Themen 8
T Selenium ?! Allgemeine Java-Themen 35
Q Selenium Allgemeine Java-Themen 11
S Selenium Problemchen Allgemeine Java-Themen 2
Erwin82a Object cannot be converted to Custom Class in Lampda Expression Allgemeine Java-Themen 2
B Type mismatch: cannot convert from Graph.Edge to ArrayList<Graph.Edge> Allgemeine Java-Themen 21
bueseb84 Java : Cannot find Symbol Allgemeine Java-Themen 7
Kirby.exe Cannot make a static reference to the non-static field rimWidth Allgemeine Java-Themen 12
S class path resource [config.properties}] cannot be opened because it does not exist Allgemeine Java-Themen 4
A Variablen non-static variable cannot be referenced from a static content Allgemeine Java-Themen 4
C Compiler-Fehler Cannot find symbol bei Hat-Beziehungen Allgemeine Java-Themen 5
Tarrew RMI Java RMI - com.sun.proxy.$Proxy1 cannot be cast to Funktionen Allgemeine Java-Themen 0
A Eclipse - Fehler beim "RUN" - "Unable to Launch - The selection cannot be launched" Allgemeine Java-Themen 6
R Char cannot be derefenrenced? Allgemeine Java-Themen 14
M Cannot create a generic array of T Allgemeine Java-Themen 5
W Threads Cannot make a static reference.. Allgemeine Java-Themen 13
127.0.0.1 Methodenaufruf -cannot find symbol- Allgemeine Java-Themen 14
S Cannot make a static reference to the non-static field MySecondClass.Points Allgemeine Java-Themen 3
S Type mismatch: cannot convert from Object to float Allgemeine Java-Themen 3
B Cannot find main-claas... Allgemeine Java-Themen 21
P Default constructor cannot handle exception type Allgemeine Java-Themen 6
M cannot be cast to java.lang.Comparable Allgemeine Java-Themen 5
K + cannot be applied Allgemeine Java-Themen 15
Tobse Cannot find symbol : construktor --- Deklariert! Allgemeine Java-Themen 9
D 'InputStreamReader' & 'BufferedReader' führen zu "cannot find symbol"-Fehler Allgemeine Java-Themen 3
X Cannot refer to a non-final variable settings inside an inner class defined in a different method Allgemeine Java-Themen 4
B cannot find Symbol Allgemeine Java-Themen 2
K java.io.IOException: Cannot validate certificate for jogl.dll Allgemeine Java-Themen 6
Saxony assert cannot be resolved Allgemeine Java-Themen 5
? Cannot run program + Vista Allgemeine Java-Themen 8
X cannot convert from Object[] to Integer[] Allgemeine Java-Themen 2
B aus java heraus kompillierte Klassen - cannot be resolved Allgemeine Java-Themen 3
G [quote]the type HashMap is not generic; it cannot be paramet Allgemeine Java-Themen 4
R cannot be referenced! Allgemeine Java-Themen 18
R Cannot be referenced. Allgemeine Java-Themen 7
G Kompiler Fehler: cannot resolve symbol: class Allgemeine Java-Themen 4
7 Cannot resolve Symbol keyPressed Allgemeine Java-Themen 3
conan2 "Cannot make a static reference to the non-static field Allgemeine Java-Themen 8
A Fehlermeldung: cannot be resolved Allgemeine Java-Themen 5
G warum operator || cannot be applied to int, double Allgemeine Java-Themen 11
D Probleme mit 'cannot execute runjava.bat' Allgemeine Java-Themen 2
G Fehlermeldung "cannot resolve symbol" Allgemeine Java-Themen 7
V Cannot resolve symbol Allgemeine Java-Themen 7
Kirby.exe Union Find Datenstruktur Allgemeine Java-Themen 27
P Find Bugs plugin Allgemeine Java-Themen 2
P JDK installieren Error: Could not find or load main class HelloWorld.java Allgemeine Java-Themen 3
C JNI loadLibary "Can't find dependent libraries" Allgemeine Java-Themen 2
S String mit Matcher.find durchsuchen und ausgeben Allgemeine Java-Themen 7
Phash Can't find Main Class Allgemeine Java-Themen 4
N Runtime.getRuntime().exec Problem mit find Allgemeine Java-Themen 3
S lp_solve mit Java nutzen - Can't find dependent libraries Allgemeine Java-Themen 8
X Could not find the main class programm will exit (textdokument) Allgemeine Java-Themen 3
S Could not find the main class Allgemeine Java-Themen 7
B Mal wieder "Could not find the main class" Allgemeine Java-Themen 3
C Could not find the main class. Allgemeine Java-Themen 15
nrg Find and replace Text docx Allgemeine Java-Themen 6
A Could not find main class: start Allgemeine Java-Themen 5
hdi Could not find main class? Allgemeine Java-Themen 8
P Java Editor Could not find the main class GUI. Programm will exit. Allgemeine Java-Themen 3
BattleMaster246 Could not find the Main class Allgemeine Java-Themen 30
N Probleme mit .jar 'Could not find main class' Allgemeine Java-Themen 3
borobudur Find a AWT frame in SWT Allgemeine Java-Themen 4
A Problem mit StringBuilder delete - find den Fehler nicht Allgemeine Java-Themen 9
N Eclipse 3.4(Ganymede) "find references in workspace&quo Allgemeine Java-Themen 4
V JNI Can't find dependent libraries Allgemeine Java-Themen 4
G "Could not find the main class. Program will exit" Allgemeine Java-Themen 20
R Ausführen von *.JAR || "Could not find main class" Allgemeine Java-Themen 7
I "Could not find the main class. Program will exit" Allgemeine Java-Themen 6
B Could not find the main class Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben