scrapy递归爬虫不遵循链接

时间:2015-11-25 22:19:25

标签: python web-crawler scrapy

我是scrapy的新手,我正试图从一个非常简单的html表格的网站上抓取数据。数据由几页组成,每页500个观察点,每页底部有两个链接“前500个条目”和“下一个500个条目”(这些是唯一的链接)。我希望抓取工具点击“下一个500条目”,直到没有剩下。提取第一页工作正常,但我无法让爬虫移动到下一页。 我的代码可能非常混乱,因为它是我从几个在线教程中一起选择的,为此道歉。由于我对程序应该如何运作的有限理解,我找不到错误。任何帮助将不胜感激: - )

from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
from scrapy.selector import HtmlXPathSelector
from test.items import testitem

class MySpider(CrawlSpider):
    name = "test"
    allowed_domains = ["http://www.example.org"]
    start_urls = ["http://www.example.com/data"]

    rules = (
        Rule(LinkExtractor(allow=(), restrict_xpaths=("//a[contains(text(),'Next 500 entries')]/@href")), callback="parse_items", follow= True),
    )

    def parse(self, response):
        hxs = HtmlXPathSelector(response)
        titles = hxs.xpath("//table/tr")
        items = []
        for titles in titles:
            item = testitem()
            item["var1"] = titles.select("td[1]/text()").extract()
            item["var2"] = titles.select("td[2]/text()").extract()
            items.append(item)
        return items

0 个答案:

没有答案