No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Scrapy

Curso de Scrapy

Facundo García Martoni

Facundo García Martoni

Deploy en Scrapy Cloud

24/27
Recursos

Aportes 21

Preguntas 5

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Si tienen la versión de Scrapy 2.2.0 al momento de correr el spider, no guardara los datos con el código que hay actualmente en el proyecto. Haciendo los siguientes cambios en el código logre que funcionara satisfactoriamente:

Primero: Cambiar todo los get() y getall() por extract()

links_declassified = response.xpath('//a[starts-with(@href, "collection") and (parent::h3|parent::h2)]/@href').extract()

title = response.xpath('//h1[@class="documentFirstHeading"]/text()').extract()

paragraph = response.xpath('//div[@class="field-item even"]//p[not(@class)]/text()').extract()

Segundo: Cambiar cb_kwargs en response.follow por meta

yield response.follow(link, callback=self.parse_link, meta={'url':response.urljoin(link)})

Tercero: En la funcion def parse_link borrar el argumento **kwargs y en la variable link cambiar kwargs[‘url’] por response.meta[‘url’].

def parse_link(self, response):
link = response.meta[‘url’]

De esta manera me funciono con la version 2.2.0 de Scrapy.

Espero que sea de ayuda, saludos!

Al parecer ScrapingHub ahora es Zyte y ya no permite hacer este tipo de acciones de forma gratuita. 😥

Facundo deberías actualizar este curso o almenos este el video de la clase 24 ya que ahora Scrapy Cloud cambio por Zyte y los procesos con diferentes.

fecha 18/diciembre/2021
Me ha funcionado, excepto al correr mi spider. Me devuelve 0 items y la respuesta es 403.
Según investigue HTTP 403 Forbidden indica que el servidor entiende la solicitud pero se niega a autorizarla.

Link de scraping hub 23/11/2021

[Link https://www.zyte.com/scrapy-cloud/ ](https://www.zyte.com/scrapy-cloud/)

en el momento de iniciar la publicacion de mi scrapy de manera publica no me lo publica no me arroja ningun error ni nada solamente no me publica nada que extraño.

Interesantisimo, es como abrir una puerta a una nueva dimensión

La url de scrapinhub redirecciona a otra página, al principio me dio algo de desconfianza pero es la misma.

asi como cuando hablas con la pantalla dicienole, facundo instalaras shub sin iniciar el entorno? me parece un error… entonces Super facundo lo soluciona XD

Todo me funciona bien hasta que trato de hacer público el dataset en scrapinghub. Simplemente no se hace público. A alguien le ha pasado lo mismo?

el scrapy cloud corrio todo bien y me entrega el archivo json, pero al momento de cambiar la url en el fetch.js me marca undefined en la pagina de platzi, no entiendo que paso

Me aparece este error cuando ejecuto shub deploy xxxxx
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xe1 in position 20: invalid continuation byte

Algún tip?

Muy bueno el sitio web scrapy cloud para hacer deploy =), como alternativas recomiendo tambien la maquina virtual linux de amazon aws, ahi pueden hacer un crontab para automatizar todo y guardarlo en el database

aprendiendo con scrapinghub, ahora algunas con inteligencia artificial con browse ai

Realice el deploy en zyte(Nuevo nombre de la website donde hizo deploy) es exactamente lo mismo sirve aun el video, pero tuve un inconvenite al colocarlo publico ya que al colocar el logo me daba un error, solo elimine la cuenta ya que solo queria practicar y hacer el ejercicio

error al ejecutar en la pagina:

[scrapy.spidermiddlewares.httperror] Ignoring response <403 https://www.cia.gov/readingroom/historical-collections>: HTTP status code is not handled or not allowed

Para los que tuvieron el problema de obtener 0 items, a mi me funciono de la siguiente manera:

  1. Dentro de la carpeta platzi_intelligence_agency (En el que introducimos todos los comandos de shub) cree un archivo llamado runtime.txt dentro de este archivo debemos colocar una version de Python la cual funcione al momento de desplegar el Spider, en mi caso puse:
python-3.7.5

Con la versión 3.9.6 de python no me funciono

  1. También me asegure de que el numero con el que hacemos shub deploy sea el mismo que esta en archivo scrapinghub.yml que tambien esta dentro de la misma carpeta platzi_intelligence_agency

NOTA: Este archivo se creo despues de hacer el shub deploy la primera vez que no me funciono

shub deploy 554367

scrapinghub.yml

project: 554367

Espero les sea de ayuda

Deploy es un término famoso entre los desarrolladores web. Puede significar muchas cosas, dependiendo del ambiente y de la tecnología usada. Sin embargo, los significados que más se refieren a la práctica y pueden resumir su función son: implantar, colocar en posición, habilitar para uso o, simplemente, publicar.

Increible los deploys online. Lo único extraño es que la página de la CIA ha cambiado en mi caso, radicamente. Ahora obtengo un status.code 404. ¿A alguien más le ha sucedido?

interesante