3

我有兴趣下载一堆网页以供以后分析。我想做两件事:

  • 将页面和相关资源(图像、与文章相关的多个页面等)下载到 WARC 文件。
  • 将所有链接更改为指向现在的本地文件。

我想在 Python 中做到这一点。

有没有什么好的图书馆可以做到这一点?Scrapy 似乎旨在抓取网站,而不是单个页面,我不确定如何生成 WARC 文件。如果没有更多的 python 原生的东西,调用 wget 是一个可行的解决方案。Heritrix 完全是矫枉过正,而不是 Python 解决方案。如果 wpull 有一个有据可查的 python 库,它会是理想的,但它似乎主要是一个应用程序。

还有其他想法吗?

4

1 回答 1

3

只需使用wget,它是您可以抓取网页并保存到 warc 中的最简单、最稳定的工具。

man wget,或者只是开始:

--warc-file=FILENAME        save request/response data to a .warc.gz file
-p,  --page-requisites           get all images, etc. needed to display HTML page

请注意,您不必更改任何链接,warc 会保留原始网页。是重播软件(openwayback,pywb)的工作,以使warc内容再次可浏览。

如果您需要使用 python: internetarchive/warc是默认库

如果您想手动制作一个 warc 文件ampoffcom/htmlwarc ,请查看这个

于 2016-12-21T22:49:54.567 回答