下载完整的网站(包括资产)以供离线使用

时间:2016-08-29 21:06:49

标签: javascript cordova offline

我正在考虑编写一个下载网站的Cordova应用程序,以便可以离线阅读(如HTTrack for Windows)。主要原因是缺少适用于Windows 10平板电脑的良好离线RSS阅读器。

我一般都知道我必须做什么,但是有一些框架可以简化其中一些吗?

到目前为止,我认为我需要做以下事情:

  • 下载网站的HTML
  • 获取所有资产(CSS,JS,图像,视频)的列表
  • 下载这些资产
  • 将资产网址替换为新的本地网址。

最大的问题是下载资产。它不像解析linkscriptimg标记的HTML一样直截了当,因为CSS可能有imports而JS可能有ajax调用。 另外,如何决定下载哪些资产?我不想浪费时间下载广告..

还有一些具体问题:

  • 我应该如何显示下载的页面?我的第一个想法是在iFrame中防止碰撞。
  • 有法律问题吗?特别是如果我要发布应用程序?
  • 我如何保存资产,以便他们有一个包含在HTML中的URL?
  • 使用服务器进行繁重的解析(解析,重写,获取URL等)可能会更好吗?有没有这方面的工具?

有没有人有任何指针?或者你认为这是不切实际的吗?

1 个答案:

答案 0 :(得分:0)

签出https://archivebox.io,这是一个开放源代码,自托管工具,可创建网站的本地,静态,可浏览HTML克隆(可保存HTML,JS,媒体文件,PDF,屏幕截图,静态资产和更多)。

它可以满足您的大部分需求,包括使用youtube-dl,wget和chrome headless保存资产和媒体文件。