平平无奇的三周。
STWP 2025 第 14 周周报
- 尝试了在 linux 上操作磁带机、使用 ltfs @yangyunfei @yzqzss
- 同步了部分 chinaxiv pdf
STWP 2025 第 15 周周报
- 鼓捣 MeiliSync @Ovler
STWP 2025 第 16 周周报
- c2025-4 @Ovler
STWP 2025 第 14 周周报
- 尝试了在 linux 上操作磁带机、使用 ltfs @yangyunfei @yzqzss
- 同步了部分 chinaxiv pdf
STWP 2025 第 15 周周报
- 鼓捣 MeiliSync @Ovler
STWP 2025 第 16 周周报
- c2025-4 @Ovler
🥰4
Save The Web Project
🎉🎂 Save The Web Project 三岁啦! 大家有什么想说的吗?或者希望我们接下来做哪些方面的工作?😀
🎉🎂 Save The Web Project 四岁啦!
回顾过去 365 天,我们干了:
好多过往的项目还是挂起,好多立项的项目仍然没有动静。也没启动任何大规模的存档项目。
开坑一时爽,填坑火葬场。
上一次新成员加入是 360 天前。过去 365 天,我们就 4 位还在蹦跶的 coder,也都木有啥空闲时间填坑。为避免废社危机,现诚招新 coder 一起玩。😭
要求:
- 会 Python 或 Golang
- 写过爬虫或做过存档相关的事情。(可选)
- 非编程纯新手,本体不是 AI。
有意私聊
回顾过去 365 天,我们干了:
- Discuz!,代码完成度很低,项目目前挂起。
- 抽屉网,完成。
- 发现了个 GitHub 的小漏洞。
- AcFun 弹幕,完成。
- cnblogs,仅预扫描,目前挂起。
- googl 短链,完成。
- 参与开发 Zeno。
- backland,追踪中。
- AcFun 存档器,完成。
- 发现了个“对多”的数据库小漏洞。
- 对多,追踪中。
- 丑搜 v3,完成。
- NicoNico Shunga,完成。
- c2025-1,追踪中。
- c2025-2,追踪中。
- 竹白,完成。
- c2025-4,完成。
好多过往的项目还是挂起,好多立项的项目仍然没有动静。也没启动任何大规模的存档项目。
开坑一时爽,填坑火葬场。
上一次新成员加入是 360 天前。过去 365 天,我们就 4 位还在蹦跶的 coder,也都木有啥空闲时间填坑。
要求:
- 会 Python 或 Golang
- 写过爬虫或做过存档相关的事情。(可选)
- 非编程纯新手,本体不是 AI。
有意私聊
🔥9❤2😁1🫡1
Save The Web Project pinned «🎉🎂 Save The Web Project 四岁啦! 回顾过去 365 天,我们干了: - Discuz!,代码完成度很低,项目目前挂起。 - 抽屉网,完成。 - 发现了个 GitHub 的小漏洞。 - AcFun 弹幕,完成。 - cnblogs,仅预扫描,目前挂起。 - googl 短链,完成。 - 参与开发 Zeno。 - backland,追踪中。 - AcFun 存档器,完成。 - 发现了个“对多”的数据库小漏洞。 - 对多,追踪中。 - 丑搜 v3,完成。 - NicoNico Shunga,完成。…»
Save The Web Project
平平无奇的三周。 STWP 2025 第 14 周周报 - 尝试了在 linux 上操作磁带机、使用 ltfs @yangyunfei @yzqzss - 同步了部分 chinaxiv pdf STWP 2025 第 15 周周报 - 鼓捣 MeiliSync @Ovler STWP 2025 第 16 周周报 - c2025-4 @Ovler
STWP 2025 第 19 周周报
本周的产量同样稀少,记一点流水账吧。
- 用 Go 重写了两年前写的 https://github.com/saveweb/fdroidswh 小玩意,用于跟踪 F-Droid Repo 的应用更新,将源代码仓库推送到 SWH 存档。 https://service-fdroidswh.saveweb.org/
- 响应了 6 个画吧备份导出请求。
- dokuwiki dumper 小重构 WIP: https://github.com/saveweb/dokuwiki-dumper/pull/14
- 把我们的 Gentoo 服务器滚到了最新。
- 由于长期没有任务,停掉了所有的 tracker 。
本周的产量同样稀少,记一点流水账吧。
- 用 Go 重写了两年前写的 https://github.com/saveweb/fdroidswh 小玩意,用于跟踪 F-Droid Repo 的应用更新,将源代码仓库推送到 SWH 存档。 https://service-fdroidswh.saveweb.org/
- 响应了 6 个画吧备份导出请求。
- dokuwiki dumper 小重构 WIP: https://github.com/saveweb/dokuwiki-dumper/pull/14
- 把我们的 Gentoo 服务器滚到了最新。
- 由于长期没有任务,停掉了所有的 tracker 。
GitHub
GitHub - saveweb/fdroidswh: Extract Git/SVN repo urls from F-Droid index and submit to Software Heritage (softwareheritage.org)
Extract Git/SVN repo urls from F-Droid index and submit to Software Heritage (softwareheritage.org) - saveweb/fdroidswh
❤1👍1
存档误入深水区——If Summer is calling us
去年我在寻 Golang 写的 WARC archiver,然后发现了 Zeno。把玩一番,发现些问题,然后发 PR 修,慢慢就参与进去了。
两个月前,突然时不时蹦出些非 web archiving 领域相关的 GitHub 账号跑来 Zeno 这个冷门项目发奇怪的 issue 和 PR。我一开始还以为是啥新型社工攻击,问了开发者才知道是因为 Google Summer of Code,所以人们跑过来套磁。
定睛一看,果然 Zeno 在 Internet Archive 今年 Google Summer of Code 的预定范围内。
以前只说过但没了解过 GSoC ,它 FAQ 说,只要是18+在校生或者开源新手,就可以写份关于你想要做的项目的提案(proposal)申请参加。
然后再一瞅,什么,参加 GSoC 竟然有钱拿!如果人在中国,成功结项能拿到 3600$ 津贴(GSoC 根据各国的「人均平价购买力」来决定津贴数额,并设有上下限)。这下必须狠狠参加了。😂
于是我也交了份提案,内容主要是说做 Headless archiving、修 CSS parser、修现有 issue、写个类似 httpbin 的 dummy site 方便做 E2E 测试。
https://summerofcode.withgoogle.com/programs/2025/projects/afDanpOP
提交提案之后就是一个多月漫长的等待了,这期间也没完全闲着,糊了些PR。
GSoC 竞争还是挺激烈的,今年总共 13k 申请人,最终被接受的只有 1.2k。今年和我一同被入选 IA 的 GSoC contributor 只有 5 位。
这周联系上了我的 GSoC 项目导师,进了 IA 的 Slack 旁观了他们开周会,很酷,竟然看到了 Brewster Kahle 出现。🤩
又能做存档,又能线上观摩 IA,又能搓代码,还有米。接下来,就是要在这个暑假把提案给实现,通过中期和最终评估。
感谢 Google。虽然 Google 过去一年杀死了 goo.gl 短链、关闭了搜索快照。😅
感谢 Zeno 的开发者 CorentinB 。
感谢 @Ovler 检查我的 proposal 。
感谢 IA 。
这个夏天我们直接原地起飞。
去年我在寻 Golang 写的 WARC archiver,然后发现了 Zeno。把玩一番,发现些问题,然后发 PR 修,慢慢就参与进去了。
两个月前,突然时不时蹦出些非 web archiving 领域相关的 GitHub 账号跑来 Zeno 这个冷门项目发奇怪的 issue 和 PR。我一开始还以为是啥新型社工攻击,问了开发者才知道是因为 Google Summer of Code,所以人们跑过来套磁。
定睛一看,果然 Zeno 在 Internet Archive 今年 Google Summer of Code 的预定范围内。
以前只说过但没了解过 GSoC ,它 FAQ 说,只要是18+在校生或者开源新手,就可以写份关于你想要做的项目的提案(proposal)申请参加。
然后再一瞅,什么,参加 GSoC 竟然有钱拿!如果人在中国,成功结项能拿到 3600$ 津贴(GSoC 根据各国的「人均平价购买力」来决定津贴数额,并设有上下限)。这下必须狠狠参加了。😂
于是我也交了份提案,内容主要是说做 Headless archiving、修 CSS parser、修现有 issue、写个类似 httpbin 的 dummy site 方便做 E2E 测试。
https://summerofcode.withgoogle.com/programs/2025/projects/afDanpOP
提交提案之后就是一个多月漫长的等待了,这期间也没完全闲着,糊了些PR。
GSoC 竞争还是挺激烈的,今年总共 13k 申请人,最终被接受的只有 1.2k。今年和我一同被入选 IA 的 GSoC contributor 只有 5 位。
这周联系上了我的 GSoC 项目导师,进了 IA 的 Slack 旁观了他们开周会,很酷,竟然看到了 Brewster Kahle 出现。🤩
又能做存档,又能线上观摩 IA,又能搓代码,还有米。接下来,就是要在这个暑假把提案给实现,通过中期和最终评估。
感谢 Google。虽然 Google 过去一年杀死了 goo.gl 短链、关闭了搜索快照。😅
感谢 Zeno 的开发者 CorentinB 。
感谢 @Ovler 检查我的 proposal 。
感谢 IA 。
这个夏天我们直接原地起飞。
Withgoogle
Google Summer of Code
Google Summer of Code is a global program focused on bringing more developers into open source software development.
🔥50 5👍2❤1
Save The Web Project
画吧的域名 haowanlab.com 过期了,被阿里云拿去竞拍,最终成交价拍出了 5210 元。 这域名有这么值钱吗。我不理解,震撼。 有没有域名玩家给大家解释一下?
刚给画吧老板打了电话让他注意注销 ICP 备案以防域名被接盘侠滥用而背锅。
这应该是最后一次帮画吧了。
R.I.P.
R.I.P.
👍28
Save The Web Project
STWP 2025 第 19 周周报 本周的产量同样稀少,记一点流水账吧。 - 用 Go 重写了两年前写的 https://github.com/saveweb/fdroidswh 小玩意,用于跟踪 F-Droid Repo 的应用更新,将源代码仓库推送到 SWH 存档。 https://service-fdroidswh.saveweb.org/ - 响应了 6 个画吧备份导出请求。 - dokuwiki dumper 小重构 WIP: https://github.com/saveweb/dokuwiki…
STWP 2025 20 至 25 周,合并周报。
过去一个月是期末,没时间。现在好久没发周报了,快速过一下最近5周做了啥。主要做的事是 Zeno,没有开其它存档项目。
week 20-21 https://github.com/internetarchive/Zeno/pull/281 稍微重构 Zeno 处理对象存储的代码,添加解析 Azure Blob 的能力。 https://github.com/internetarchive/Zeno/pull/295 让 Zeno 终端输出的日志变彩色。
week 23
https://github.com/internetarchive/Zeno/pull/324 小小地引入标准 css 解析器,替换掉原本简陋的容易产生误报的正则提取方式。 (CSS 1/3)
week 24
None
week 25
- https://github.com/Crossbell-Box/xLog/pull/2230 前几周惊人地发现 xLog 上的一半的新文章是 spam,于是打标然后跑了个简单的 TF-IDF 分类器来识别 spam 账号。这周把识别结果人工检查了一下,把 spam 账号列表发给 xLog。
- https://github.com/internetarchive/Zeno/pull/339 支持提取 CSS 的 @import 链接。(CSS 2/3)
- https://github.com/internetarchive/Zeno/pull/345 完整支持解析 html 嵌入和引用的 css 资源。同时,发现上游的 css parser 不支持 CSS Nesting 和未适配“现代” css 语法。由于没有精力给上游修bug,因此写了个更鲁棒的正则来作为 parser 失败时的 fallback parser 当作 workaround。 (CSS 3/3)
- https://github.com/microsoft/vscode-css/pull/43 在 debug CSS 的过程中发现 VSC 自带的 CSS 高亮也没适配11年前的“新”语法标准。@overflowcat 得知后刷了一个 PR 。
- https://github.com/internetarchive/Zeno/pull/353 改善了对 GitHub Issue 页面的存档效果。
- 向 Zeno 添加 Headless/Headfull 存档功能(进行中)
这几周看 w3c 和 whatwg 都要看吐了,之后会发点关于 CSS、浏览器、URL、HTML、编码 之类的小故事。
过去一个月是期末,没时间。现在好久没发周报了,快速过一下最近5周做了啥。主要做的事是 Zeno,没有开其它存档项目。
week 20-21 https://github.com/internetarchive/Zeno/pull/281 稍微重构 Zeno 处理对象存储的代码,添加解析 Azure Blob 的能力。 https://github.com/internetarchive/Zeno/pull/295 让 Zeno 终端输出的日志变彩色。
week 23
https://github.com/internetarchive/Zeno/pull/324 小小地引入标准 css 解析器,替换掉原本简陋的容易产生误报的正则提取方式。 (CSS 1/3)
week 24
None
week 25
- https://github.com/Crossbell-Box/xLog/pull/2230 前几周惊人地发现 xLog 上的一半的新文章是 spam,于是打标然后跑了个简单的 TF-IDF 分类器来识别 spam 账号。这周把识别结果人工检查了一下,把 spam 账号列表发给 xLog。
- https://github.com/internetarchive/Zeno/pull/339 支持提取 CSS 的 @import 链接。(CSS 2/3)
- https://github.com/internetarchive/Zeno/pull/345 完整支持解析 html 嵌入和引用的 css 资源。同时,发现上游的 css parser 不支持 CSS Nesting 和未适配“现代” css 语法。由于没有精力给上游修bug,因此写了个更鲁棒的正则来作为 parser 失败时的 fallback parser 当作 workaround。 (CSS 3/3)
- https://github.com/microsoft/vscode-css/pull/43 在 debug CSS 的过程中发现 VSC 自带的 CSS 高亮也没适配11年前的“新”语法标准。@overflowcat 得知后刷了一个 PR 。
- https://github.com/internetarchive/Zeno/pull/353 改善了对 GitHub Issue 页面的存档效果。
- 向 Zeno 添加 Headless/Headfull 存档功能(进行中)
这几周看 w3c 和 whatwg 都要看吐了,之后会发点关于 CSS、浏览器、URL、HTML、编码 之类的小故事。
❤8🥰2
Save The Web Project
STWP 2025 20 至 25 周,合并周报。 过去一个月是期末,没时间。现在好久没发周报了,快速过一下最近5周做了啥。主要做的事是 Zeno,没有开其它存档项目。 week 20-21 https://github.com/internetarchive/Zeno/pull/281 稍微重构 Zeno 处理对象存储的代码,添加解析 Azure Blob 的能力。 https://github.com/internetarchive/Zeno/pull/295 让 Zeno 终端输出的日志变彩色。…
STWP 2025 26 周周报
还是全是 Zeno 。
- https://github.com/internetarchive/Zeno/pull/356 Headless/Headfull 存档 PR 发了,PR 仍在 WIP。(测试可以存档知乎专栏!)
- https://github.com/internetarchive/Zeno/pull/370 解析非 UTF-8 的 HTML,PR 仍在 WIP 。
- https://github.com/internetarchive/Zeno/pull/369 加了丢弃超过指定 payload 大小的响应的功能。
- https://github.com/internetarchive/gowarc/pull/115 主要是修了 gowarc 在上层的 HTTP TCP Conn 出现异常关闭时 (early EOF, io timeout, conn closed/reset),由于没有向下 .CloseWithError(),而是调用常规的 .Close(),导致下层的 MITM 套娃 HTTP TCP Conn 以为是正常 EOF,最终导致,对于没有 Content-Length 头的流式响应,这类 early EOF 的响应被当成正常响应而被写入了 WARC 存档中。(而对于更常见的非流式响应,由于存在 Content-Length,即使 early EOF 仍然被当成了正常 EOF,但是由于 go 的 http 标准库的 http.ReadRespon() 会用 io.LimitReader 来组装 Response.Body ,这样的 Response.Body 会自己做一次额外的 EOF 位置与 Content-Length 位置的匹配检查,如果不匹配会返回 early EOF。换句话说,这 BUG 在大部分情况下被标准库缓解了导致我们没发现。)。然后还修了 Conn.SetReadDeadline() 木有生效、临时文件泄漏的问题。
还是全是 Zeno 。
- https://github.com/internetarchive/Zeno/pull/356 Headless/Headfull 存档 PR 发了,PR 仍在 WIP。(测试可以存档知乎专栏!)
- https://github.com/internetarchive/Zeno/pull/370 解析非 UTF-8 的 HTML,PR 仍在 WIP 。
- https://github.com/internetarchive/Zeno/pull/369 加了丢弃超过指定 payload 大小的响应的功能。
- https://github.com/internetarchive/gowarc/pull/115 主要是修了 gowarc 在上层的 HTTP TCP Conn 出现异常关闭时 (early EOF, io timeout, conn closed/reset),由于没有向下 .CloseWithError(),而是调用常规的 .Close(),导致下层的 MITM 套娃 HTTP TCP Conn 以为是正常 EOF,最终导致,对于没有 Content-Length 头的流式响应,这类 early EOF 的响应被当成正常响应而被写入了 WARC 存档中。(而对于更常见的非流式响应,由于存在 Content-Length,即使 early EOF 仍然被当成了正常 EOF,但是由于 go 的 http 标准库的 http.ReadRespon() 会用 io.LimitReader 来组装 Response.Body ,这样的 Response.Body 会自己做一次额外的 EOF 位置与 Content-Length 位置的匹配检查,如果不匹配会返回 early EOF。换句话说,这 BUG 在大部分情况下被标准库缓解了导致我们没发现。)。然后还修了 Conn.SetReadDeadline() 木有生效、临时文件泄漏的问题。
👍2
Save The Web Project
Photo
STWP 2025 28 至 30 周,合并周报
- https://github.com/internetarchive/Zeno/pull/356 Headless/Headful 终于做好了。
- https://github.com/internetarchive/Zeno/pull/370 解析非 UTF-8 的 HTML+URL 也做好了。
- 修了两个小 bug
- https://github.com/internetarchive/Zeno/pull/403 加上了第一个 e2e 测试。
- https://github.com/internetarchive/Zeno/pull/376 加了 Window 二进制构建,但实际上并不能用。用来忽悠 Windows 用户。
- https://github.com/internetarchive/Zeno/pull/374 纯 Go 崛起失败。
- https://github.com/internetarchive/Zeno/pull/356 Headless/Headful 终于做好了。
- https://github.com/internetarchive/Zeno/pull/370 解析非 UTF-8 的 HTML+URL 也做好了。
- 修了两个小 bug
- https://github.com/internetarchive/Zeno/pull/403 加上了第一个 e2e 测试。
- https://github.com/internetarchive/Zeno/pull/376 加了 Window 二进制构建,但实际上并不能用。用来忽悠 Windows 用户。
- https://github.com/internetarchive/Zeno/pull/374 纯 Go 崛起失败。
❤3🥰3🤬2 1
Save The Web Project
F**K YOU GOOGLE
Google 改主意了,计划只删“非活跃”的 goo.gl 链接,其它保留。
https://blog.google/technology/developers/googl-link-shortening-update/
但还保留多久呢?肯定不会一直保留下去吧?
总之,所有短链服务都是**。
https://blog.google/technology/developers/googl-link-shortening-update/
但还保留多久呢?肯定不会一直保留下去吧?
总之,所有短链服务都是**。
Save The Web Project
STWP 2025 28 至 30 周,合并周报 - https://github.com/internetarchive/Zeno/pull/356 Headless/Headful 终于做好了。 - https://github.com/internetarchive/Zeno/pull/370 解析非 UTF-8 的 HTML+URL 也做好了。 - 修了两个小 bug - https://github.com/internetarchive/Zeno/pull/403 加上了第一个 e2e 测试。…
STWP 2025 第 31 周周报
- 修了 wikiteam3 的两个 bug
- 重构了 dokuwiki dumper
- Zeno headless PR (1) (1) (1)😭
- 修了 wikiteam3 的两个 bug
- 重构了 dokuwiki dumper
- Zeno headless PR (1) (1) (1)
Please open Telegram to view this post
VIEW IN TELEGRAM