61 cursos en Platzi y esta es la primera vez que veo que un profesor se sienta a explicar detenidamente y en cada sistema operativo como crear un proyecto de manera profesional. Facundo eres un grande 👏👏👏
Introducción al web scraping
¿Qué es el web scraping?
¿Por qué aprender web scraping hoy?
Python: el lenguaje más poderoso para extraer datos
Fundamentos de la web
Entender HTTP
¿Qué es HTML?
Robots.txt: permisos y consideraciones al hacer web scraping
XML Path Language
XML Path Language
Tipos de nodos en XPath
Expresiones en XPath
Predicados en Xpath
Operadores en Xpath
Wildcards en Xpath
In-text search en Xpath
XPath Axes
Resumen de XPath
Aplicando lo aprendido
Proyecto: scraper de noticias
Un proyecto para tu portafolio: scraper de noticias
Construcción de las expresiones de XPath
Obteniendo los links de los artículos con Python
Guardando las noticias en archivos de texto
Conclusiones
Cómo continuar tu ruta de aprendizaje
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 71
Preguntas 21
61 cursos en Platzi y esta es la primera vez que veo que un profesor se sienta a explicar detenidamente y en cada sistema operativo como crear un proyecto de manera profesional. Facundo eres un grande 👏👏👏
RESUMEN:Proyecto scraper de noticias
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
Este proyecto es un scraper de noticias del diario la_Republica Vamos a extraer de este periodico, encabezados y cuerpo de las noticias diariamente y almancenarlos para un posterior análisis. Como análisis de Texto, marketing, análisis de sentimientos y demás.
Notas :
Entorno de trabajo.
(Window)
Es posible realizar estas acciones desde cualquier otro shell. En este curso se usa Cmder. cmder es un emulador de bash, a partir de los comandos nativos de windows generamos una “aliases” que tratan de igualar los comandos que tenemos en consola de tipo UNIX. En windows podríamos usar comandos más habituales para programar.
Pasos
0 ■ Inicializamos git en el directorio de trabajo
git init
1 ■ Creamos nuestro ambiente virtual:
py -m venv venv (Windows)
python (linux) ...
2 ■ Creamos en el directorio de trabajo o carpeta un archivo .gitignore y escribimos que ignore la carpeta del ambiente virtual. No queremos ocupar espacio innecesario y no es buena práctica.
(.gitignore)
venv/
(nombre de la carpeta que vamos a ignorar)/
3 ■ Para activar el ambiente virtual realizamos
ven\Scripts\activate (Windows)
source venv/bin/activate (Linux)
4 ■ Si trabajas en VsCode. Creamos un Workspace para tener una estructura más organizada “save as workspace” y así tener un workspace para que VS tenga idea de qué tenemos en esta capeta.
5 ■ Instalamos las dependencias de este proyecto:
pip install request lxml autopep8
Es buena práctica tener actualizado el manejador de paquetes de python.
py - m pip install pip --upragade
Excelente, el profe explica como hacerle en todos los sistemas operativos. Muchas gracias. De los mejores profesores.
Los mismos códigos , para evitar la fatiga
pip install request lxml autopep8
py -m pip install pip --upgrade
Si usan bash como terminal para activar el ambiente virtual
source venv/Scripts/activate
Tengo Ubuntu 20.04.1 LTS, y tuve algunos problemas en la instalación, lo solucione de la siguiente forma:
Instalando por separado y en esta secuencia
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install requests
sudo pip3 install lxml
sudo pip3 install autopep8
Esto también lo pueden hacer en la terminal del mismo Visual Studio, solo que al momento de ejecutar la activación el comando cambia, lo de más se mantiene igual.
Nota es ‘requests’ con ‘s’ al final
Tuve algunos problemas activando el virtual enviroment en Ubuntu por lo que aquí les dejo lo que me ayudo a solucionarlo
link
Aunque lo que necesite fue solo estos comandos:
Esto crea el entorno virtual e instala python3
virtualenv -p /usr/bin/python3 venv
Luego se ejecuta el archivo activate
(Asegurate de estar ya en la carpeta del proyecto)
source venv/bin/activate
Hola les dejo mis notas del curso
https://github.com/rb-one/curso-webscrapping-con-xpath-/blob/master/Notes/notes.md
facundo sos crack
Me gusta como Facundo explica cada clase. Se entiende a la perfeccion. Gracias
Estupenda explicación paso a paso durante la creación del entorno adecuado de nuestro proyecto instructor Facundo, me agrado que nos indicaras el porqué de cada comando para poder comprender mejor el funcionamiento que tienen e incluso resaltaste la importancia de tener pip actualizado y como hacerlo.
No hay problema si se les llega a cerrar Visual Studio o se les apaga el computador ya el entorno virtual ya queda con los paquetes instalados. Lo único que deben hacer es volver a activar el ambiente virtual con el comando “.\venv\Scripts\activate” por ejemplo si están en windows. Además si desean saber qué paquetes tienen instalados en su entorno virtual solo basta con escribir el comando:
pip freeze
Aquí algunas recomendaciones para los que usan Ubuntu o tienen problemas:
Siempre antes de instalar algo usar:
sudo apt-get update
Algunos deberan instalar pip pero si lo hacen y les sale un error de distutils usen:
sudo apt-get install python3-distutils
Luego instalen el get-pip.py
Una vez instalado deberan instalar lo necesario para generar entornos virtuales y pueden usar el siguiente comando:
sudo apt-get install python3-venv
Y por ultimo algo que todos pueden usar. En ubuntu puedes crear archivos desde la terminal y abrirlos directamente en VSCode:
$ code .gitignore
Soy nuevo en Visual Studio que extensiones me recomiendan??
Actualizar pip: python -m pip install pip --upgrade
Muy bien explicado todo. Se nota que el profesor se pone en los pies del alumno.
Que excelente que se nos explique usando buenas prácticas! De lo mejor el curso hasta ahora!
HOLA UN TIP SI ESTAN EN MAC USEN SOURCE\VENV\SCRIPTS\ACTIVATE
Como activar entorno virtual en Mac
¿Porque crear un archivo .gitignore?
Maravillosa clase!!
Excelente clase Facundo es excelente profesor
A alguien más le salio este error en mac al tratar de instalar dependencias?
ERROR: Could not find an activated virtualenv (required).
OJO, si activé el entorno virtual (aparece venv antes de cada prompt)
Facu en serio lo que logras con tus clases es incréible, no puedo creer que hayas vuelto tan digerible la web para mí, es algo que siempre se me ha complicado, ya espero continuar tu siguiente curso.
Hola a todos
Estoy trabajando desde Mac y cuendo le doy
<py -m venv venv >
<python3 -m venv venv >
y
<python -m venv venv >
siempre me sale error de sintaxis alguna idea?
Reto 1:
Descripción de un producto
$x('//div[@id="product_description"]/following-sibling::p/text()').map(x => x.data)
Es mejor mantener los paquetes en un manaifiesto usualmente al manifiesto se le llama requirements.txt y se ve asi
requirements.txt
requests
lxml
autopep8
y para instalar los paquietes se usa pip install -r requirements.txt
No me queda claro que significa el VENV y crear un entorno virtual aparte - Alguien por favor ayudeme - saludos !
tambien se puede hacer con anaconda
¿Se podría hacer lo mismo con app´s como twitter o facebook? Es decir, extraer un tweet, como estamos extrayendo el cuerpo de la noticia de esta web.
.gitignore
virtualenv
He tomado el curso de Terminal y linea de Comandos y el de Git,pero el profe resume todo lo que se ocupa en el día a día en pocos minutos.
Comentario para algunos: para crear el entorno virtual desde Ubuntu para Windows, utilice el comando:
virtualenv nombre_del_entorno -p python3
Personalmente recomiendo black en vez de autopep8, me ha ido mejor, pero eso desde mi punto de vista
sos EL CRACK
Si alguno también usa W10 y no quiere bajar el Cmder puede utilizar la consola de GIT que viene cuando lo descargas, es muy amigable y funciona como en UNIX.
Creamos el entorno virtual de python: python -m venv venv
¿Los sitios web a los que les hagamos webscraping detectan estas peticiones?
poetry es mejor que venv o pipenv?
De las pocas clases de programación en las que el profesor explica como crear un entorno como se debe: usando consola, git, gitignore y hasta creando el workspace… Excelente
Y se cayo la pagina…
Reto 2:
Stock de un libro
$x('//td[contains(., "In stock")]/text()').map(x => x.data)
python -m pip install pip --upgrade
Para actualizar PIP en Mac
python3 -m pip install --upgrade pip
Copado con esta clase y con lo que te hace avanzar. Muy buenos puntos para comprender el paso a paso.
Dependencias
pip install lxml4.5.0 requests2.23.0 autopep8
==1.5.2
En python 3.10.4 se crea el entorno virtual con:
python -m venv “nombre del entorno”
Correr entorno virtual en mac
source venv/bin/activate
Explica las herramientas que ocupamos
Tengo windows 10 pero las ordenes son con python, no con py
De la tienda de windows tambien podes descargar la aplicacion Debian o Ubuntu y en visual studio code aparece la terminal correspondiente y te aparecen las unidades montadas en /mnt/{letra de unidad}
Solución del reto anterior
$x('//article[@class="product_page"]/p/text()').map( x => x.wholeText)
$x('//p[@class="instock availability"]/text()').map(x => x.wholeText)
gracias estimados sigan con su video
como puedo?
super buen profe!
En Mac puedes usar Hombrew
brew install requests lxml autopep8
debes tener instalado hombrew, recomiendo el curso de prework para tu sistema operativo
Una recomendación que uso mucho es crear un archivo requirements.txt en el root del proyecto. Allí escribo los nombres de los paquetes a instalar con pip.
Luego ejecutar el comando:
$ pip install -r requirements.txt
Luego de instalar refresco el archivo con la lista de los paquetes instalados y sus versiones así:
$ pip freeze > requirements.txt
Esto permite que, si suben sus repositorios a GitHub las personas que lo clonen sepan que paquetes instalar y en la version que ustedes los usaron.
Hola amigos,
Cree 2 alias y los agregue a mi archivo .zshrc (pueden agregarlos a su .bash_profile, .bashrc o respectivo archivo de configuración) para poder controlar los entornos virtuales de Python:
alias ivenv="python3 -m venv venv"
alias avenv="source venv/bin/activate"
Después reinicia tu consola. De esta forma al ejecutar ivenv se creará un entorno virtual de nombre venv y al ejecutar avenv se activará dicho entorno virtual 😃
para los que tengan python 3.8 la instalación de modulo request falla se puede ejecutar con el siguiente comando
< python -m pip install requests>
Para hacer scraping sin miedo a que la IP sea baneada usar en navegador thor.
Gracias a este curso, ahora que me doy cuenta, la aplicación de Google News no es mas que un Web Scraping de muchos periódicos. 😮
Con PowerShell funciona exactamente igual
Como crear un entorno virtual. En Mac hay que poner python3
Hola comunidad, soy economista. En mi tesis quiero ver si hay un sesgo a la hora de presentar noticias sobre captura de personas de determinada nacionalidad en Colombia. Para eso estoy aprendiendo de web scrapping, sin embargo, no estoy seguro de como hacer para traer todas las noticias de determinado periodo, me pueden ayudar!?
A mi me gusta declarar la carpeta de venv como .venv y de esta manera la carpeta queda como oculta, me resulta mas cómodo tenerla así.
El profe facundo es el mejor!!!
SI a alguien les sale este error al querer crear el entorno virtual:
The virtual environment was not created successfully because ensurepip is not
available. On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.
apt-get install python3-venv
ahi mismo esta el comando para solucionarlo
Si quisera ser profesor , seria como Facundo. Excelente
Facundo el mejor como siempre
Cuando entro en un curso y no es Facundo… me siento un poco mal… no es que los otros lo hagan mal… es que el es muy bueno en lo que hace.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.