Si van a subir este proyecto a su repo en github les dejo dos links utilies:
Editor de readme.md: https://pandao.github.io/editor.md/en.html
Plantilla para el readme.md: https://gist.github.com/Villanuevand/6386899f70346d4580c723232524d35a
Scrapy: el framework estrella
Qué aprenderás sobre el framework Scrapy
El framework asíncrono: Scrapy
Instalación de Scrapy en Mac OS
Instalación de Scrapy en Linux
Instalación de Scrapy en Windows
Nuestro primer Hello World
Recordando generadores e iteradores
Trabajando con Scrapy
Scrapy Shell
Nuestro primer proyecto: estructura de carpetas
Spiders
Usando XPath para extraer datos
Guardando los datos
Seguir links: response.follow
Múltiples callbacks
Pasando argumentos a nuestro spider
Configuraciones útiles
Proyecto: Platzi Intelligence Agency
Platzi Intelligence Agency
Inicializando el repositorio local
Utilizando XPath en el sitio de la CIA
Spider: CIA
Finalizando la creación del spider
Creando el frontend de nuestra aplicación
Deploy a GitHub Pages
Deploy en Scrapy Cloud
Bonus: automatizar procesos con la API
Conclusiones
Evitar meterse en problemas
El siguiente paso en tu camino
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 15
Preguntas 1
Si van a subir este proyecto a su repo en github les dejo dos links utilies:
Editor de readme.md: https://pandao.github.io/editor.md/en.html
Plantilla para el readme.md: https://gist.github.com/Villanuevand/6386899f70346d4580c723232524d35a
Lo que es muy bueno de Facundo es que casi al final del curso te da un repaso simple de lo que ya debes de dominar. Eso Lo hace un excelente profesor, ya que sí tenías dudas de algo o te encontrabas medio ciegas… POW!!! te empodera para continuar.
** Para tener a la mano los pasos en Ubuntu **
$ deactivate
$ cd ../..
$ mkdir platzi_intell_agency
$ cd platzi_intell_agency
En VScode → File → Open folder → platzi_intell_agency
$ git init
$ touch .gitignore #Y pegar el gitignore de la clase
$ python3 -m venv venv
$ source venv/bin/activate
$ python3 -m pip install --upgrade pip
$ sudo pip3 install autopep8 scrapy
$ scrapy startproject platzi_intell_agency # Para inicializar el proyecto
$ cd platzi_intell_agency/
Pasos para crear el entorno:
Crear carpeta ( mkdir nombre_carpeta)
Inicializar repositorio (git init)
Crear gitignore ( touch .gitignore)
Abrir nombre_carpeta en VSC
Pegar archivo de .gitignore
Crear entorno virtual (py -m ven venv)
Activar entorno
Actulizar pip (py -m pip install pip --upgrade)
Instalar dependencias (pip install scrapy autopep8)
Verificar Scrapy (scrapy version)
Crear el proyecto (scrapy startproject nombre_carpeta)
Entrar a la carpeta (cd nombre_carpeta)
Espero que les sirva, asi lo anote yo y me es de gran ayuda. Saludos
Manteniendo buenas practicas, usando la linea de comando y git /o/
Esta es la URL de lo que se copia en el .gitignore para que lo puedan guardar para usar en un futuro https://github.com/github/gitignore/blob/master/Python.gitignore
Si usan Linux les dejo un script que hace todo lo del video:
#!/bin/sh
mkdir "$1" && cd "$1"
git init
curl https://gist.githubusercontent.com/andyrufasto/7d37a44d1e0840c684de0c2e000a3ebd/raw > .gitignore
python3 -m venv venv &&
source venv/bin/activate &&
python -m pip install pip --upgrade &&
pip install scrapy autopep8 &&
scrapy startproject "$1"
Cómo usarlo?
ejemplo:
chmod +x scrapy_script.sh
scrapy_script.sh platzi_inteligence_agency
#esperan la magia
cd platzi_intenigence_agency
source venv/bin/activate
Por si a alguien le da pereza ir a buscar el .gitignore del proyecto pasado, este es el link de donde Facundo copió y pegó el contenido de este archivo:
https://raw.githubusercontent.com/github/gitignore/master/Python.gitignore
Si depronto les interesa, les recomiendo usar Anaconda, yo lo uso y tengo un solo virtual enviroment en conda en el cual tengo instaladas todos los paquetes que he requerido a lo largo de la escuela de datascience y asi no me tengo que preocupar por crear virtual enviroments para cada proyecto. Ademas me es muy util para debuguear en VSCODE y uso el mismo conda enviroment como kernel en los jupyter notebooks.
<h1>Anaconda</h1>Installation:
https://docs.anaconda.com/anaconda/install/linux/
Debian
apt-get install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6
Command | |
---|---|
conda init <br>source ~/.bashrc |
Starts anaconda |
conda config --set auto_activate_base True |
Auto activate conda |
conda create --name myenv |
Create virtual enviroment with conda, it is installed in anaconda3 folder. |
conda activate myenv |
To activate the virtual enviroment |
conda env remove --name ENVIRONMENT |
remove enviroment |
conda install -c anaconda requests |
Install requests |
conda install -c conda-forge beautifulsoup4 |
Install beautifulsoup |
conda install -c conda-forge scrapy |
Instalar Scrapy |
conda install -c conda-forge autopep8 |
Autopep8 es requerido para scrapy |
conda install -c conda-forge tesseract |
Instalar Tesseract |
En la consola escriban history y verán un listado de todo lo que han escrito en su terminal, ahí pueden buscar los comandos que usaron desde instalar el entorno virtual, scrapy, etc por si se les dificulta como a mi recordar todo los comandos
❯ git remote add origin https://github.com/IvanJaimesN/IntelligenceAgency.git
❯ git pull origin master
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 597 bytes | 99.00 KiB/s, done.
From https://github.com/IvanJaimesN/IntelligenceAgency
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
❯ git push origin master
Username for 'https://github.com': IvanJaimesN
Password for 'https://[email protected]':
Everything up-to-date
https://github.com/pmsorion/intelligence_agency
Para la gestión de los virtualenvs, yo uso anaconda, me parece una excelente herramienta, y además en ella se incluyen un set de herramientas que usualmente como desarrolladores de python usamos, como: Jupyter notebooks, Pycharm, Spyder, Vscode.
Aquí les dejo el link: https://www.anaconda.com/
que bien
interesante
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.