Selenium: Unterschied zwischen den Versionen

Aus CodicaTipps
Zur Navigation springen Zur Suche springen
Die Seite wurde neu angelegt: „Selenium ist eine Fernsteuerung-API für verschiedene Webbrowser. In Java-Projekte integriert man es am besten mittels Maven (Group-ID:selenium-java, Artif…“
 
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Selenium ist eine Fernsteuerung-API für verschiedene Webbrowser. In [[Java]]-Projekte integriert man es am besten mittels Maven (Group-ID:selenium-java, Artifact-ID: org.seleniumhq.selenium).
[http://docs.seleniumhq.org/ Selenium] ist eine Fernsteuerung-API für verschiedene Webbrowser. In [[Java]]-Projekte integriert man es am besten mittels Maven (Group-ID:selenium-java, Artifact-ID: org.seleniumhq.selenium).


== Fernsteuerung von Firefox ==
== Fernsteuerung von Firefox ==


Um [[Firefox]] fernzusteuern, bedarf es noch des [https://github.com/mozilla/geckodriver/releases geckodriver], der von [https://github.com/mozilla/geckodriver/releases Github] herunterzuladen ist und dann im Pfad enthalten sein muss. Z.B. in <code>/usr/local/bin/</code>.  
Um [[Firefox]] fernzusteuern, bedarf es noch des [https://github.com/mozilla/geckodriver/releases geckodriver], der von [https://github.com/mozilla/geckodriver/releases Github] herunterzuladen ist und dann im Pfad enthalten sein muss. Z.B. in <code>/usr/local/bin/</code>.


== Fernsteuerung von Chromium ==
Um Chromium fernzusteuern, bedarf es des ChromeDrivers<ref>https://sites.google.com/a/chromium.org/chromedriver/getting-started</ref>. Dieser kann unter Debian 9 Stretch mit folgendem Befehl installiert werden:
  sudo aptitude install chromium-chromedriver
== Schnelleres Parsen von Tabellen ==
Das Parsen von Tabellen nimmt in Selenium einige Zeit in Anspruch. Angeblich kann man das verbessern, indem nach Aufbau der Webpage der HTML-Code mittels [https://jsoup.org/ Jsoup] geparset wird.<ref>Siehe http://stackoverflow.com/questions/21243523/using-seleniumdriver-to-extract-all-rows-and-columns-given-a-table-element .</ref>
  String source = "<table>" + driver.findElement(By.xpath(locator)).getAttribute("innerHTML") + "<table>";
  Document doc = Jsoup.parse(source, "UTF-8");
== Alternativen ==
In der Nodejs-Welt gibt es Alternativen zu Selenium, z.B.
* Puppeteer
** https://www.lewuathe.com/simple-crawling-with-puppeteer-in-typescript.html


--------
--------
<references/>
<references/>
[[Category:Internet]]
[[Category:Internet]]

Aktuelle Version vom 24. Dezember 2020, 07:02 Uhr

Selenium ist eine Fernsteuerung-API für verschiedene Webbrowser. In Java-Projekte integriert man es am besten mittels Maven (Group-ID:selenium-java, Artifact-ID: org.seleniumhq.selenium).

Fernsteuerung von Firefox

Um Firefox fernzusteuern, bedarf es noch des geckodriver, der von Github herunterzuladen ist und dann im Pfad enthalten sein muss. Z.B. in /usr/local/bin/.

Fernsteuerung von Chromium

Um Chromium fernzusteuern, bedarf es des ChromeDrivers[1]. Dieser kann unter Debian 9 Stretch mit folgendem Befehl installiert werden:

 sudo aptitude install chromium-chromedriver

Schnelleres Parsen von Tabellen

Das Parsen von Tabellen nimmt in Selenium einige Zeit in Anspruch. Angeblich kann man das verbessern, indem nach Aufbau der Webpage der HTML-Code mittels Jsoup geparset wird.[2]

String source = "

" + driver.findElement(By.xpath(locator)).getAttribute("innerHTML") + "
"; Document doc = Jsoup.parse(source, "UTF-8");

Alternativen

In der Nodejs-Welt gibt es Alternativen zu Selenium, z.B.