Scrapy-Recursively Scrape网页并将内容保存为html文件

时间:2013-07-05 00:57:34

标签: scrapy

我正在使用scrapy来提取网页标签中的信息,然后将这些网页保存为HTML文件.Eg http://www.austlii.edu.au/au/cases/cth/HCA/1945/这个网站有一些与司法案件相关的网页。我想去每个链接并保存只有与特定司法案例相关的内容作为HTML页面。例如,转到http://www.austlii.edu.au/au/cases/cth/HCA/1945/1.html,然后保存与案例相关的信息。

有没有办法在scrapy中递归执行此操作并在HTML页面中保存内容

1 个答案:

答案 0 :(得分:1)

是的,您可以使用Scrapy执行此操作,Link Extractors会有所帮助:

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


class AustliiSpider(CrawlSpider):
    name = "austlii"
    allowed_domains = ["austlii.edu.au"]
    start_urls = ["http://www.austlii.edu.au/au/cases/cth/HCA/1945/"]
    rules = (
        Rule(SgmlLinkExtractor(allow=r"au/cases/cth/HCA/1945/\d+.html"), follow=True, callback='parse_item'),
    )

    def parse_item(self, response):
        hxs = HtmlXPathSelector(response)

        # do whatever with html content (response.body variable)

希望有所帮助。