Scrapy durchsucht nachfolgende Seiten nicht nacheinander

Ich schreibe einen Crawler, um die Namen von Elementen von einer Website abzurufen. Die Website enthält 25 Elemente pro Seite und mehrere Seiten (200 für einige Elementtypen).

Hier ist der Code:

from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.selector import HtmlXPathSelector
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from lonelyplanet.items import LonelyplanetItem

class LonelyplanetSpider(CrawlSpider):
    name = "lonelyplanetItemName_spider"
    allowed_domains = ["lonelyplanet.com"]
    def start_requests(self):
        for i in xrange(8):
            yield self.make_requests_from_url("http://www.lonelyplanet.com/europe/sights?page=%d" % i)

def parse(self, response):
    hxs = HtmlXPathSelector(response)
    sites = hxs.select('//h2')
    items = []
    for site in sites:
        item = LonelyplanetItem()
        item['name'] = site.select('a[@class="targetUrl"]/text()').extract()
        items.append(item)
    return items

Wenn ich den Crawler ausführe und die Daten im CSV-Format speichere, werden die Daten nicht in der Reihenfolge gespeichert, d. H. - Seite 2-Daten werden gespeichert, bevor Seite 1 oder Seite 3 vor Seite 2 gespeichert werden, und auf ähnliche Weise. Auch manchmal, bevor alle Daten einer bestimmten Seite gespeichert sind, gehen die Daten einer anderen Seite ein und werden die restlichen Daten der vorherigen Seite erneut gespeichert.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage