社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

网页内容永久保存,25000+ GitHub Star!

GitCube • 4 天前 • 93 次点击  

想要永久保存网络上看到有价值的信息,远比想象中难得多。收藏夹里的链接,说不定哪天再打开,已经变成 404。

以前经常用 Internet Archive 来保存网页内容,但也有不少问题,存下来的页面内容经常缺东少西,视频播放不了,图片加载不出来。

所以需要集中工具配合着用,单靠一个不太够。

直到最近,在 GitHub 看到一个叫 ArchiveBox 的开源项目,狂揽了 25000+ Star,专门用来保存网页内容。

它能把一个网页保存成好几种格式:HTML 原文、PDF 文档、PNG 截图,连视频音频都能下载。

相当于给每个网页做了多重备份,就算某个格式以后打不开了,还有其他方式能看。

img

多格式存档,怎么都能打开

ArchiveBox 存档一个网页的时候,会同时生成多份不同格式的备份。

比如用浏览器渲染后生成 PDF 和截图,用 wget 下载完整的 HTML+CSS+JS 文件,还会用 SingleFile 把整个页面压缩成单个 HTML 文件。

这样做的好处就是,十年后就算某个技术淘汰了,你还有其他格式可以查看。

Screenshot of ArchiveBox dashboard

视频音频都能下载

如果是 YouTube、Bilibili 这类视频网站,ArchiveBox 还能把视频文件直接下载下来,甚至连字幕和封面图都不漏。

另外像 SoundCloud 的音频、Twitter 的帖子和评论,也都能完整保存。对经常想要收藏教程视频或者音乐的朋友来说真的很实用。

img

代码仓库一键克隆

如果碰到 GitHub 或 GitLab 的链接时,ArchiveBox 会自动克隆整个代码仓库到本地。

不光是当前版本,连历史提交记录都在,相当于把整个项目搬回家了。

img

另外几个值得一说的实用功能:

浏览器扩展:提供插件安装,可以一边浏览网页一边随手保存,不用每次都复制链接;

定时抓取:可以从 Pocket、RSS 订阅源自动导入链接,设置成每天或每周定时存档;

Web 管理界面:除了命令行,还有个网页界面可以打标签、搜索、查看日志;

数据格式通用:存的都是 HTML、JSON、PDF 这些标准格式,不需要专门软件就能打开,放十几年都不怕。

三步安装,轻松上手

项目提供了 Docker 快速部署方式,只需要三步就能搞定:

1、建个目录,下载配置文件:

mkdir-p ~/archivebox/data && cd ~/archiveboxcurl-fsSL'https://docker-compose.archivebox.io' > docker-compose.yml

2、初始化一下:

docker compose run archivebox init --setup

3、启动服务:

docker compose up

打开 http://localhost:8000 就能用了。

不想用 Docker 的话,pip 本地安装也可以,并且支持 Linux、macOS、Windows 系统。

image-20251021105940137

写在最后

经常收藏链接的人可以试试这工具,特别是做研究、写文章需要引用资料的时候。

项目开源免费,数据全存自己电脑上,不用担心第三方服务哪天倒闭了。

就是比较占硬盘空间,特别需要保存视频的可能不动就是几个 G。还有一些需要登录才能看的内容,设置起来会稍微麻烦点。

不过话说回来,与其担心某天链接失效找不回来,不如提前存一份在本地。

就像给重要内容买了个备份,用不用得上另说,起码心里踏实。

GitHub 项目地址:https://github.com/ArchiveBox/ArchiveBox

今天的分享到此结束,感谢大家抽空阅读,我们下期再见,Respect!

往期热文

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/188181