Articles of picante

Scrapy no trabaja con retorno y rendimiento juntos.

Este es mi codigo def parse(self, response): soup = BeautifulSoup(response.body) hxs = HtmlXPathSelector(response) sites = hxs.select(‘//div[@class=”row”]’) items = [] for site in sites[:5]: item = TestItem() item[‘username’] = “test5” request = Request(“http://www.example.org/profile.php”, callback = self.parseUserProfile) request.meta[‘item’] = item **yield item** mylinks= soup.find_all(“a”, text=”Next”) if mylinks: nextlink = mylinks[0].get(‘href’) yield Request(urljoin(response.url, nextlink), callback=self.parse) def parseUserProfile(self, response): […]

Reglas Scrapy CrawlSpider con múltiples devoluciones de llamada

Estoy tratando de crear un ExampleSpider que implemente RastreoSpider rastrero. My ExampleSpider debe poder procesar páginas que contengan solo información del artista, páginas que contengan solo información del álbum y algunas otras páginas que contengan información del artista y del álbum. Pude manejar los dos primeros escenarios. pero el problema se produce en el tercer […]

Rastreo en un sitio web no declarado

Soy nuevo en Python y Scrapy, pero estoy tratando de obtener algunos datos de un sitio web que tiene un certificado que no es de confianza, y creo que es por eso que no puedo rastrearlo, aunque tal vez hice la araña de manera incorrecta Aquí está el registro de errores que recibo cuando bash […]

¿Cuál es la relación entre el objeto rastreador con la araña y los objetos de canalización?

Estoy trabajando con scrapy. Tengo una pipie que comienza con: class DynamicSQLlitePipeline(object): @classmethod def from_crawler(cls, crawler): # Here, you get whatever value was passed through the “table” parameter table = getattr(crawler.spider, “table”) return cls(table) def __init__(self,table): try: db_path = “sqlite:///”+settings.SETTINGS_PATH+”\\data.db” db = dataset.connect(db_path) table_name = table[0:3] # FIRST 3 LETTERS self.my_table = db[table_name] He estado […]

Pase el archivo de entrada a scrapy que contiene una lista de dominios para ser raspados

Vi este enlace [un enlace] (¡ Pase a Scrapy Spider una lista de URL para rastrear a través del archivo .txt )! Esto cambia la lista de urls de inicio. Quiero raspar las páginas web para cada dominio (desde un archivo) y colocar los resultados en un archivo separado (llamado así por el dominio). He […]

Error de error al obtener gcc al instalar scrapy

Cuando instalo scrapy, aparece el siguiente error (el comando ‘gcc’ falló con el estado de salida 1 ). Estoy usando Centos, y sí, tengo instalada la última versión de gcc. Pero no estoy seguro de por qué estoy recibiendo este error. Intenté googlearlo pero no pude encontrar una solución OpenSSL / crypto / crypto.c: En […]

Reescriba las URLs descaradas antes de enviar la solicitud

Estoy usando scrapy para rastrear un sitio multilingüe. Para cada objeto, existen versiones en tres idiomas diferentes. Estoy usando la búsqueda como punto de partida. Desafortunadamente, la búsqueda contiene direcciones URL en varios idiomas, lo que causa problemas al analizar. Por lo tanto, me gustaría preprocesar las URL antes de que se envíen. Si contienen […]

áspero: entender cómo funcionan los elementos y las solicitudes entre devoluciones de llamada

Estoy teniendo problemas con Scrapy y no entiendo cómo funciona el paso exacto de elementos entre devoluciones de llamada. Tal vez alguien me pueda ayudar. Estoy buscando en http://doc.scrapy.org/en/latest/topics/request-response.html#passing-additional-data-to-callback-functions def parse_page1(self, response): item = MyItem() item[‘main_url’] = response.url request = scrapy.Request(“http://www.example.com/some_page.html”, callback=self.parse_page2) request.meta[‘item’] = item return request def parse_page2(self, response): item = response.meta[‘item’] item[‘other_url’] = […]

Scrapy: cómo detectar el error de descarga e intentar descargarlo nuevamente

Durante mi rastreo, algunas páginas fallaron debido a una redirección inesperada y no se devolvió ninguna respuesta. ¿Cómo puedo detectar este tipo de error y volver a progtwigr una solicitud con la URL original, no con la URL redirigida? Antes de preguntar aquí, hago mucha búsqueda con Google. Parece que hay dos maneras de solucionar […]

Scrapy: ¿Por qué las cadenas extraídas están en este formato?

estoy haciendo item[‘desc’] = site.select(‘a/text()’).extract() pero esto será impreso como este [u’\n A mano libera\n ‘] ¿Qué debo hacer para controlar y eliminar caracteres extraños como [u ‘\ n, el espacio de clasificación y’]? No puedo recortar exceptions.AttributeError: ‘list’ object has no attribute ‘strip’ y si se convierte en cadena y luego se elimina, el […]