3

我正在使用scrapy提取网页标签中的信息,然后将这些网页保存为HTML文件。例如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页面中

4

1 回答 1

1

是的,你可以用 Scrapy 做到这一点,链接提取器将帮助:

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)

希望有帮助。

于 2013-07-05T07:53:21.820 回答