This is a copy of a shared ChatGPT conversation
ChatGPT said:
The short answer is: not really, at least not as a standalone thread archiver.
Most command-line tools for 4chan are snapshot-oriented:
-
archive-chan — snapshot archive, can poll until a thread 404s, but it doesn't maintain an append-only history.
PyPI
-
BASC-Archiver — same underlying design;
archive-chanis essentially its maintained successor.PyPI+1
The software that does preserve deleted posts is generally board archiving software, not thread archivers.
Asagi
Asagi continuously polls an entire board, stores every post in a database, and doesn't remove posts simply because they later disappear from the live thread. This is why public archives backed by Asagi can often show posts that were deleted from 4chan after they were scraped. wiki.archiveteam.org
Fuuka / FoolFuuka
These are the classic stack:
-
Asagi = scraper/database backend
-
FoolFuuka = web frontend
Together they create searchable archives like Warosu, Desuarchive, 4plebs (for supported boards), etc. wiki.archiveteam.org+1
For archiving just a handful of threads
This is where the ecosystem is surprisingly sparse.
I couldn't find an actively maintained tool that:
-
archives one thread,
-
can be restarted later,
-
merges new posts,
-
never deletes previously seen posts, and
-
marks disappeared posts as deleted instead of removing them.
Most people wanting this functionality either:
-
run a lightweight custom poller against the JSON API, or
-
use a full Asagi instance, which is much heavier than needed for a few threads.
A relatively small enhancement to archive-chan
Given your specific use case, adding an --incremental mode to archive-chan would likely be less work than adopting Asagi.
The logic is straightforward:
-
Load the previous
thread.json. -
Merge posts by post ID (
no). -
Add any new posts.
-
Never remove old ones.
-
Optionally flag posts missing from the latest API response as
"deleted": true. -
Regenerate the HTML from the merged dataset.
Since archive-chan already downloads the JSON and renders HTML, most of the necessary infrastructure is already there. The missing piece is the merge strategy rather than replacing the archive wholesale.
If you're interested, I can also sketch what such a patch would look like—it would probably be on the order of a few hundred lines of Python rather than a complete rewrite.