(Acest articol a fost publicat pentru prima dată pe pacha.dev/blogși a contribuit cu drag la R-Bloggers). (Puteți raporta problema despre conținutul de pe această pagină aici)
Doriți să vă împărtășiți conținutul pe R-Bloggers? Faceți clic aici dacă aveți un blog sau aici dacă nu.
Din cauza întârzierilor cu plata bursei mele, dacă această postare vă este utilă, vă cer cu drag o donație minimă pentru a -mi cumpăra o cafea. Acesta va fi folosit pentru a continua eforturile mele open source. Explicația completă este aici: un mesaj personal de la un contribuabil open source.
Puteți să -mi trimiteți întrebări pentru blog folosind acest formular și să vă abonați pentru a primi un e -mail atunci când există o nouă postare.
Motivație
Am primit această întrebare: Am urmat postarea dvs. Selenium și nu funcționează pe Windows. Cum pot remedia asta?
Postarea în cauză este aici și, după testarea pe o mașină Windows, mi -am dat seama că problema era legată de faptul că versiunile mai noi Google Chrome (> 119) nu oferă ChromedRiver, un software pe care Selenium îl folosește pentru a controla browserul și nu funcționează cu cea mai recentă versiune pe care o puteți descărca de la Google.
Iată cum să folosești Mozilla Firefox în schimb.
Software necesar
- Mozilla Firefox și GeckOdriver: browser web și program de telecomandă
- Rselenium: Integrarea R-Selenium
- Rvest: procesare HTML
- DPlyr: Pentru a încărca operatorul de conducte (poate fi utilizat mai târziu pentru curățarea datelor)
- Purrr: iterație (adică operațiuni repetate)
Am instalat Mozilla Firefox de pe site -ul oficial și am urmat instalatorul.
Pentru geckodriver, l-am descărcat de aici pentru Windows pe 64 de biți și am salvat „geckodriver.exe” într-un nou folder „C:”. Apoi, a trebuit să adaug folderul pe calea ca acesta:
- Apăsați Win + S
- Tastați „Variabile de mediu”
- Deschideți „Editați variabilele de mediu ale sistemului”.
- Faceți clic pe „Variabile de mediu”.
- În „Variabile de sistem”, găsiți și selectați „Path”, apoi faceți clic pe „Editare”.
- Faceți clic pe „Nou” și adăugați „C:” fără ghilimele
- Faceți clic pe OK pentru a salva.
Apoi reporniți Rstudio și închideți PowerShell dacă este deschis. Nu instalați geckodrive nu ar avea ca rezultat doar acest mesaj de eroare în R: „Imposibil de creat un nou serviciu GeckOdRiverService.”
Am instalat rselenium din consola R:
if (!require(RSelenium)) install.packages("RSelenium")
# or
remotes::install_github("ropensci/RSelenium")
Pentru restul pachetelor:
if (!require(rvest)) install.packages("rvest")
if (!require(dplyr)) install.packages("dplyr")
if (!require(purrr)) install.packages("purrr")
Rularea serverului Selenium
Am încercat să încep Selenium așa cum este menționat în Ghidul oficial, iar în postarea legată mai sus și nu a funcționat.
De asemenea, a trebuit să descarc Selenium Server, așa că am folosit acest link și dintr -un nou PowerShell am rulat:
cd Downloads java -jar selenium-server-standalone-3.9.1.jar
Din RStudio (același lucru pentru un terminal R), aș putea controla browserul de la R:
library(RSelenium) library(rvest) library(dplyr) library(purrr) rmDr <- remoteDriver(port = 4444L, browserName = "firefox") rmDr$open(silent = TRUE) url <- "https://pacha.dev/blog" rmDr$navigate(url)
Acest lucru ar trebui să afișeze o nouă fereastră Firefox și să -mi arate blogul. Restul pașilor sunt aceiași cu postarea anterioară.
Sper că acest lucru este util 🙂
