Empezando con scrapy

Instalación de Scrapy

requisito previo de la instalación scrapy:

  • Python 2.7 o superior 3.3
  • Paquetes pip y setuptools de Python.
  • lxml
  • OpenSSL.

Puedes instalar Scrapy usando pip. Para instalar usando pip ejecute:

pip install Scrapy

Instalación específica de la plataforma


Anaconda

Esta es la forma recomendada de instalar Scrapy.

Si ya tienes instalado Anaconda o Miniconda, la empresa Scrapinghub mantiene paquetes oficiales de conda para Linux, Windows y OS X.

Para instalar Scrapy usando conda, ejecute:

conda install -c scrapinghub scrapy

Ubuntu 9.10 o superior

Utilice los Paquetes de Ubuntu oficiales, que ya resuelven todas las dependencias por usted y se actualizan continuamente con las últimas correcciones de errores.

Si prefiere crear las dependencias de python localmente en lugar de depender de los paquetes del sistema, primero deberá instalar las dependencias que no sean de python requeridas:

sudo apt-get install python-dev python-pip libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libssl-dev

Puedes instalar Scrapy con pip después de eso:

pip install Scrapy

Archilinux

Puede seguir las instrucciones genéricas o instalar Scrapy desde el paquete AUR Scrapy:

yaourt -S scrapy

Ventanas

Scrapy con Python 3 aún no es compatible con Windows.

Siga estos pasos para instalar scrapy en Windows:

  • Instalar Python 2.7

  • ajuste la variable de entorno PATH para incluir rutas al ejecutable de Python y scripts adicionales. Las siguientes rutas deben agregarse a PATH:

    C:\Python27;C:\Python27\Scripts;

  • Instale pywin32 desde aquí

  • instalemos Scrapy:

      pip install Scrapy
    

Mac OS X

Construir las dependencias de Scrapy requiere la presencia de un compilador de C y encabezados de desarrollo. En OS X, esto generalmente lo proporcionan las herramientas de desarrollo Xcode de Apple. Para instalar las herramientas de línea de comandos de Xcode, abra una ventana de terminal y ejecute:

xcode-select --install

Hay un problema conocido que impide que pip actualice los paquetes del sistema. Esto debe abordarse para instalar correctamente Scrapy y sus dependencias. Aquí hay algunas soluciones propuestas:

  • (Recomendado) No use el sistema python, instale una versión nueva y actualizada que no entre en conflicto con el resto de su sistema. He aquí cómo hacerlo usando el administrador de paquetes homebrew:

    • Install homebrew following the instructions in http://brew.sh/

    • Update your PATH variable to state that homebrew packages should be used before system packages (Change .bashrc to .zshrc accordantly if you’re using zsh as default shell):

      echo "export PATH=/usr/local/bin:/usr/local/sbin:$PATH" >> ~/.bashrc
      
    • Reload .bashrc to ensure the changes have taken place:

      source ~/.bashrc
      
    • Install python:

      brew install python
      
    • Latest versions of python have pip bundled with them so you won’t need to install it separately. If this is not the case, upgrade python:

      brew update; brew upgrade python
      
  • (Opcional) Instale Scrapy dentro de un entorno de python aislado.

Este método es una solución para el problema anterior de OS X, pero es una buena práctica general para administrar dependencias y puede complementar el primer método.

virtualenv es una herramienta que puede usar para crear entornos virtuales en python. Recomendamos leer un tutorial como http://docs.python-guide.org/en/latest/dev/virtualenvs/ para comenzar.

Después de cualquiera de estas soluciones, debería poder instalar Scrapy:

pip install Scrapy

Creando un proyecto

Antes de comenzar a trabajar con scrapy, debe iniciar un proyecto en el que desee almacenar su código. Ingrese al directorio y ejecute este código

scrapy startproject helloProject

La tercera parte de este código es el nombre del proyecto. Este código creará un directorio “helloProject” con los siguientes contenidos:

helloProject/
    scrapy.cfg            # deploy configuration file

    helloProject/         # project's Python module, you'll import your code from here
        __init__.py

        items.py          # project items file

        pipelines.py      # project pipelines file

        settings.py       # project settings file

        spiders/          # a directory where you'll later put your spiders
            __init__.py