我是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