Crawling con una sesión autenticada en Scrapy

En miPregunta anterio, No era muy específico sobre mi problema (scraping con una sesión autenticada con Scrapy), con la esperanza de poder deducir la solución de una respuesta más general. Probablemente debería haber usado la palabracrawling.

Entonces, aquí está mi código hasta ahora:

class MySpider(CrawlSpider):
    name = 'myspider'
    allowed_domains = ['domain.com']
    start_urls = ['http://www.domain.com/login/']

    rules = (
        Rule(SgmlLinkExtractor(allow=r'-\w+.html

Como puede ver, la primera página que visito es la página de inicio de sesión. Si aún no estoy autenticado (en elparse función), llamo a mi personalizadologin función, que publica en el formulario de inicio de sesión. Entonces, si yoa. autenticado, quiero seguir arrastrándome.

l problema es que elparse función que intenté anular para iniciar sesión, ahora ya no hace las llamadas necesarias para raspar más páginas (supongo). Y no estoy seguro de cómo guardar los elementos que creo.

Alguien ha hecho algo como esto antes? (Autenticar, luego rastrear, usando unaCrawlSpider) Cualquier ayuda sería apreciada

), callback='parse_item', follow=True), ) def parse(self, response): hxs = HtmlXPathSelector(response) if not "Hi Herman" in response.body: return self.login(response) else: return self.parse_item(response) def login(self, response): return [FormRequest.from_response(response, formdata={'name': 'herman', 'password': 'password'}, callback=self.parse)] def parse_item(self, response): i['url'] = response.url # ... do more things return i

Como puede ver, la primera página que visito es la página de inicio de sesión. Si aún no estoy autenticado (en elparse función), llamo a mi personalizadologin función, que publica en el formulario de inicio de sesión. Entonces, si yoa. autenticado, quiero seguir arrastrándome.

l problema es que elparse función que intenté anular para iniciar sesión, ahora ya no hace las llamadas necesarias para raspar más páginas (supongo). Y no estoy seguro de cómo guardar los elementos que creo.

Alguien ha hecho algo como esto antes? (Autenticar, luego rastrear, usando unaCrawlSpider) Cualquier ayuda sería apreciada

Respuestas a la pregunta(4)

Su respuesta a la pregunta