Website-downloader (AhmadIbrahiim/Website-downloader)
Searching Database…
这是什么?
一个自托管的 Node.js 应用,可以下载任意网站的完整源代码,包括其中的 JavaScript、样式表和图片,方便你保留一份离线副本。
这是命令行工具还是 Web 应用?
它是一个小型 Web 应用:你打开界面、提交一个 URL,服务器用 wget 镜像该网站,然后通过 socket 连接把打包成 zip 的结果流式传回你的浏览器。
怎么让它跑起来?
克隆仓库,运行 npm install,然后运行 npm start;服务器默认监听 3000 端口。
除 Node.js 外还需要什么?
需要。必须安装 Node.js 16+ 和 wget,并确保它们在 PATH 中可用,因为应用是通过调用 wget 来执行实际下载的。
下载量有上限吗?
有。默认情况下,单个请求的上限为 100MB 的容量配额和 5 分钟(300000 毫秒)的超时时间,两者都可以通过环境变量调整。
它在 Windows 和 macOS 上能用吗,还是仅限 Linux?
三个系统都能用,因为只需要装好 wget:在 Debian/Ubuntu 上用 apt install wget,在 macOS 上用 brew install wget,在 Windows 上用 winget install JernejSimoncic.Wget。
它实际运行的 wget 参数是什么?
它运行 wget --mirror --convert-links --adjust-extension --page-requisites --no-parent,作用是递归抓取整个网站、为离线浏览重写链接、补全正确的文件扩展名、抓取页面所需资源,并避免爬入父目录。
在发给我之前,它是怎么把下载的网站打包起来的?
wget 把网站镜像到磁盘后,应用会使用 archiver 库把文件压缩成一个压缩包,然后通过 socket 连接回传。
我可以把它部署到别处,而不是在本地运行吗?
README 中有一节“部署到云服务商”,暗示支持一键托管部署,但没有列出具体的服务商或步骤。
What are similar projects?
3d-asset-server, FreePEP, wechat-article-exporter, monolith, reclip, gallery-dl, cheerio, wechat-style-extractor

