Ghid pas cu pas pentru a utiliza rselenium cu Firefox (Linux și Windows)

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(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

Continuând cu postarea anterioară, aici extind instrucțiunile pentru Windows și Linux (nu am un laptop Mac pentru a testa pe OS X).

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)

Mozilla Firefox și Geckodriver

Ferestre

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:

  1. Apăsați Win + S
  2. Tastați „Variabile de mediu”
  3. Deschideți „Editați variabilele de mediu ale sistemului”.
  4. Faceți clic pe „Variabile de mediu”.
  5. În „Variabile de sistem”, găsiți și selectați „Path”, apoi faceți clic pe „Editare”.
  6. Faceți clic pe „Nou” și adăugați „C:” fără ghilimele
  7. 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.”

Linux

Folosesc Manjaro, deci Firefox este browserul implicit.

Pentru a instala geckodriver am folosit aceste comenzi:

wget https://github.com/mozilla/geckodriver/releases/download/v0.36.0/geckodriver-v0.36.0-linux64.tar.gz -O ~/Downloads/geckodriver.tar.gz
tar -xzf ~/Downloads/geckodriver.tar.gz -C ~/Downloads
rm ~/Downloads/geckodriver.tar.gz
sudo mv ~/Downloads/geckodriver /usr/local/bin/
geckodriver --version

Ieșirea ar trebui să arate „GeckOdriver 0.36.0”.

Relenium și server Selenium

Am instalat rselenium din consola R:

if (!require(RSelenium)) install.packages("RSelenium")

# or

remotes::install_github("ropensci/RSelenium")

Am încercat să încep seleniul așa cum este menționat în ghidul oficial și nu a funcționat.

Am descărcat serverul Selenium din acest link.

Pentru restul pachetelor:

if (!require(rvest)) install.packages("rvest")
if (!require(dplyr)) install.packages("dplyr")
if (!require(purrr)) install.packages("purrr")

Rularea serverului Selenium

Aceste comenzi funcționează pe PowerShell (Windows) și Sh/Bash/ZSH (Linux):

cd Downloads
java -jar selenium-server-standalone-3.9.1.jar

Instanța serverului Selenium trebuie să fie rulată de fiecare dată înainte Rularea codului R, cu excepția cazului în care terminalul rămâne deschis.

Controlul browserului

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 ca în postarea inițială în care arăt exemple practice.

Sper că acest lucru este util 🙂

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.