Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso de Scrapy

Curso de Scrapy

Facundo García Martoni

Facundo García Martoni

Spiders

10/27
Recursos

Aportes 10

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Que es spiders?

Spider es una clase de python a la cual le decimos que informacion queremos, que informacion no queremos y como guardar esa informacion.

Para empezar a hacer uso de esta creamos un archivo en la carpeta spider y escribimos el siguiente codigo:

import scrapy

class QuotesSpider(scrapy.Spider):
    # name es el nombre unico con el scrapy se va referir al spider dentro del proyect.
    # name debe ser unico.
    name = 'quotes'
    # Defiimos una lista de url a las cuales les vamos a realizar las peticiones http.
    start_urls = [
        'http://quotes.toscrape.com/page/1/'
    ]
    # definir el metodo parse el cual nos sirve para analizar un archivo y extraer informacion valiosa a partir de el.
    def parse(self, response):
        print('*' * 10)
        print('\n\n')
        print(response.status, response.headers)
        print('*' * 10)
        print('\n\n')

Y en la consola escribiremos:

scrapy crawl quotes # quotes viene del nombre que le dimos al spider en el codigo anterior.

Resumen:
â– â– â– â– â– â– â– 

Conociendo entonces que el spider es aquella clase que nos permite programar la lógica de extracción,

  • Scrapy permite crear rápidamente un spider desde la línea de comandos. Debes estar dentro de la carpeta de trabajo de tu proyecto. Ejecuta: scrapy genspider test_quotes quotes.toscrape.com/ .Este comando retorna en la carpeta spiders el siguiente script:

import scrapy


class TestQuotesSpider(scrapy.Spider):
    name = 'test_quotes'
    allowed_domains = ['quotes.toscrape.com/']
    start_urls = ['...quotes.toscrape.com//']

    def parse(self, response):
        pass


  • Scrapy cuenta con templates de spiders a los que puedes acceder scrapy genspider -l en formato de lista como se ve en el snipet, y si quieres usar un template simplemente debes pasar el parámetro -t y el template. scrapy genspider [-t template] <name> <domain> .
Available templates:
  basic
  crawl
  csvfeed
  xmlfeed

🕷
Spider es una clase de python a la cual le decimos que informacion queremos, que informacion no queremos y como guardar esa informacion.

Documentación oficial de Scrapy: https://docs.scrapy.org/en/latest/topics/spiders.html

Crear la carpeta

Inicializar git

Crear gitignore

Crear el ambiente virtual

Inicializamos el ambiente

Instalamos scrapy y autopep8

Inicializamos el proyecto scrapy (scrapy startproject nombre_del_proyecto)

Vamos a la carpeta spiders y creamos el archivo de python nombre_del_proyecto.py

Luego que hagamos el código ejecutamos desde la consola el comando:

scrapy crawl nombre_del_proyecto

justo acá en mi casa estudiando las spiders y:
😮🕷

import scrapy

class ToolsSpider(scrapy.Spider):
    name = 'tools'
    start_urls = [
        'https://www.educaciontrespuntocero.com/recursos/secundaria/'
    ]

    def parse(self, response):
        print('*'*10)
        print(response.status, response.headers)
        print('*' * 10)
        print('\n\n')

Excelente, vamos

Parse: Analizar un archivo para extaer información valiosa a partir de el

interesante