R es una plataforma de código abierto que ha sido ampliamente desarrollada en los últimos años, extendiendose a diversas áreas de las ciencias e ingeniería. Por su parte, WebScraping o Raspado Web, corresponde a una serie de técnicas que permiten obtener información disponible en sitios Web de forma automatizada. El presente repositorio contiene material actualizado para aprender a utilizar algunas de las librerías más útiles para este fin, rvest y RSelenium.
Con este tutorial van a aprender a cómo obtener información de tipo texto, tablas, imagenes y archivos de todo tipo.
- Manual de instalación librería RSelenium
- Presentación del Taller en formato HTML
- Video del taller
- R Scripts de ejemplos básicos con rvest y RSelenium
- Notas sobre Archivo robots.txt (una buena práctica)
Nota: Todo el contenido está hecho en R y RMarkdown
Se enlista una serie de referencias muy buenas que permite apoyar el aprendizaje en cuanto a técnicas de raspado Web y librerías mostradas.
- Automated Web Scraping with R. https://resulumit.com/teaching/scrp_workshop.html
- Harvesting the web with rvest. https://rvest.tidyverse.org/articles/harvesting-the-web.html
- RSelenium Basics. https://cran.r-project.org/web/packages/RSelenium/vignettes/basics.html
- How to drive a Web browser with R (and RSelenium). https://www.computerworld.com/article/2971265/how-to-drive-a-web-browser-with-r-and-rselenium.html
- Polite Github Repository. https://github.com/dmi3kno/polite
- Ethics in Web Scraping. https://towardsdatascience.com/ethics-in-web-scraping-b96b18136f01
- $100 to $1000 per hour Web Scraping with Python. https://medium.com/@dennisyd/100-to-1000-hours-with-python-pandas-and-selenium-9cf5c40b46d2
Dado la naturaleza dinámica de los sitios Web, es probable que algún script no corra por algún cambio hecho en una página dentro del último tiempo. Si se detecta que algún script no corre, lo más probable es que el problema sea algo de este tipo, por lo tanto se insta a que me lo puedan comunicar para realizar las modificaciones en los scripts. Cualquier duda o sugerencia, por favor contactarme directamente a [email protected] ✌️