тогда была вызвана функция разбора.

мпредыдущий вопросЯ не был очень конкретным в отношении моей проблемы (соскоб с аутентифицированного сеанса в Scrapy) в надежде вывести решение из более общего ответа. Наверное, мне следовало бы использовать словоcrawling.

Итак, вот мой код:

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

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

Как видите, первая страница, которую я посещаю - это страница входа. Если я еще не аутентифицирован (вparse функция), я называю свой обычайlogin функция, которая отправляет сообщения в форму входа. Тогда, если яя Я хочу продолжить сканирование.

Проблема в том, чтоparse Функция, которую я пытался переопределить, чтобы войти в систему, теперь больше не делает необходимых вызовов, чтобы очистить любые дальнейшие страницы (я предполагаю). И я не уверен, как сохранить сохраненные мной элементы.

Кто-нибудь делал что-то подобное раньше? (Аутентифицировать, затем сканировать, используяCrawlSpider) Любая помощь будет оценена.

), 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

Как видите, первая страница, которую я посещаю - это страница входа. Если я еще не аутентифицирован (вparse функция), я называю свой обычайlogin функция, которая отправляет сообщения в форму входа. Тогда, если яя Я хочу продолжить сканирование.

Проблема в том, чтоparse Функция, которую я пытался переопределить, чтобы войти в систему, теперь больше не делает необходимых вызовов, чтобы очистить любые дальнейшие страницы (я предполагаю). И я не уверен, как сохранить сохраненные мной элементы.

Кто-нибудь делал что-то подобное раньше? (Аутентифицировать, затем сканировать, используяCrawlSpider) Любая помощь будет оценена.

Ответы на вопрос(4)

Ваш ответ на вопрос