pwebarc: ./dumb_server/

A suite of tools for mirroring and hoarding web pages you visit for later offline viewing. I.e. your own personal Wayback Machine that can also archive HTTP POST requests and responses, as well as most other HTTP-level data, which also follows “archive everything now, figure out what to do with it later” philosophy

git clone
git clone


Raw Source

What is pwebarc-dumb-dump-server? a very dumb simple archiving server for Personal Private Passive Web Archive (pwebarc) (also there) pWebArc browser extension (also there). This thing is less than 200 lines of pure Python that only uses the Python's standard library and nothing else. You could be running it already.

Why does pwebarc-dumb-dump-server exists?

This was made for easy Quickstart (also there).

Normally, you would use something smarter than this (when I publish it), but this will work fine as a starting point.

Also, even with the better thing, this is still useful in case you are feeling paranoid and only want to run the minimal viable thing as a daemon.




usage: [-h] [--version] [--host HOST] [--port PORT] [--root ROOT] [--uncompressed] [--default-profile NAME] [--ignore-profiles] [--no-print-cbors]

Simple archiving server for pWebArc. Dumps each request to `<ROOT>/<profile>/<year>/<month>/<day>/<epoch>_<number>.wrr`.

  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --host HOST           listen on what host/IP (default:
  --port PORT           listen on what port (default: 3210)
  --root ROOT           path to dump data into (default: pwebarc-dump)
  --uncompressed        dump new archivals to disk without compression; the default is to try to compress each new archive first
  --default-profile NAME
                        default profile to use when no `profile` query parameter is supplied by the extension (default: `default`)
  --ignore-profiles     ignore `profile` query parameter supplied by the extension and use the value of `--default-profile` instead
  --no-print-cbors      don't print parsed representations of newly archived CBORs to stdout even if `cbor2` module is available