Я хотел знать, есть ли лучший способ поиска по нескольким URL-адресам внутри одной веб-страницы с одним и тем же пауком.
У меня есть несколько URL-адресов, к которым я хочу получить доступ с индексом.
Код будет:
class MySpider(scrapy.Spider):
limit = 5
pages = list(range(1, limit))
shuffle(pages)
cat_a = 'http://example.com/a?page={}'
cat_b = 'http://example.com/b?page={}'
def parse(self, response):
for i in self.pages:
page_cat_a = self.cat_a.format(i)
page_cat_b = self.cat_b.format(i)
yield response.follow(page_cat_a, self.parse_page)
yield response.follow(page_cat_b, self.parse_page)
Функция parse_page
продолжает сканировать другие данные на этих страницах.
В моем выходном файле я вижу, что данные собираются в повторяющихся последовательностях, поэтому у меня есть 10 веб-страниц из категории a и затем 10 веб-страниц из категории b с повторением.
Интересно, заметил ли бы этот веб-сервер, который я сканирую, такое последовательное поведение и мог бы забанить меня?
Кроме того, у меня есть 8 URL на одной и той же веб-странице, которую я хочу сканировать, все с использованием индексов, поэтому вместо 2 категорий, которые я дал в примере, было бы 8.
Спасибо.