от
Я пытаюсь паук scrapy ползать через несколько страниц в одном архиве, с целью открытия каждого отдельного звена и выскабливание содержимого страницы. Я бегу в некоторые случайные ошибки HTTP 500, который я пытаюсь пропустить просто делать попробовать-кроме как пропустить эти страницы вернувшись 500 ошибок. Первая часть функция анализа перебирает hrefs в разделе Архив страниц выскоблить, используя функцию parse_art. Вторая часть это найти на следующей странице в архиве и следовать на эту страницу, чтобы продолжить обход. Я пытаюсь изменить программу для перебора первоначальный URL-адрес, но не могу показаться, чтобы получить это право. Любая помощь будет оценили. Scrapy работает на Python 3.7.
import scrapy
url_number = 1

class SpiderOne(scrapy.Spider):
    name = 'spider1'
    start_urls = ["http://www.page2bscraped.com/archive?page=%d" % url_number]

    #Parses over the archive page
    def parse(self, response):
        global url_number
        for href in response.xpath(".//a/@href"):
            yield response.follow(href, self.parse_art)

        for href in response.xpath(start_url):
            yield response.follow(start_url, self.parse)
            url_number  = 1

    #Parses page contents                              
    def parse_art(self, response):
    #code goes here
Я пытаюсь сделать так, что паук ползет по архиву, используя URL-адрес и просто добавить 1 к текущему номеру архива, вместо того, чтобы полагаться на (недостоверные) "Следующая страница" в XPath.

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.
...