【问题标题】:Downloading a webpage and associated resources to a WARC in python在 python 中将网页和相关资源下载到 WARC
【发布时间】:2016-12-17 03:37:10
【问题描述】:
我有兴趣下载一堆网页以供以后分析。我想做两件事:
- 将页面和相关资源(图片、与一篇文章关联的多个页面等)下载到 WARC 文件。
- 将所有链接更改为指向现在的本地文件。
我想在 Python 中执行此操作。
有没有什么好的库可以做到这一点? Scrapy 似乎旨在抓取网站,而不是单个页面,我不确定如何生成 WARC 文件。如果没有更多的 python 原生的东西,调用 wget 是一个可行的解决方案。 Heritrix 完全是矫枉过正,而不是 Python 解决方案。如果 wpull 有一个有据可查的 python 库,它会是理想的,但它似乎主要是一个应用程序。
还有其他想法吗?
【问题讨论】:
标签:
python
webpage
scrape
warc
【解决方案1】:
只需使用 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看看这个