Skip to main content

Makes a complete archive of imageboard threads including images, HTML, and JSON.

Project description

BASC Archiver

The BASC Archiver is a Python library (packaged with the thread-archiver script) used to archive imageboard threads. It uses the 4chan API with the py4chan wrapper. Developers are free to use the BASC-Archiver library for some interesting third-party applications, as it is licensed under the LGPLv3.

It comes with a CLI interface for archiving threads, the thread-archiver, with a GUI interface under development.

The thread-archiver is designed to archive all content from a 4chan thread:

  • Download all images and/or thumbnails in given threads.

  • (NEW!) Download all child threads (4chan threads referred to in a post)

  • Download a JSON dump of thread comments using the 4chan API.

  • Download the HTML page

  • Convert links in HTML to use the downloaded images

  • Download CSS/JS and convert HTML to use them

  • Keep downloading until 404 (with a user-set delay)

  • Can be restarted at any time

The thread-archiver replaces the typical “Right-click Save As, Web Page Complete” action, which does not save full-sized images or JSON. It works as a guerilla, static HTML alternative to Fuuka.

Usage

Usage:
  thread-archiver <url>... [options]
  thread-archiver -h | --help
  thread-archiver -v | --version

Options:
  --path=<string>            Path to folder where archives will be saved [default: ./archive]
  --runonce                  Downloads the thread as it is presently, then exits
  --delay=<float>            Delay between file downloads [default: 0]
  --poll-delay=<float>       Delay between thread checks [default: 20]
  --nothumbs                 Don't download thumbnails
  --thumbsonly               Download thumbnails, no images
  --ssl                      Download using HTTPS
  --follow-children          Follow threads linked in downloaded threads
  --follow-to-other-boards   Follow linked threads, even if from other boards
  --silent                   Suppresses mundane printouts, prints what's important
  --verbose                  Printout more information than normal
  -h --help                  Show help
  -v --version               Show version

Example

thread-archiver http://boards.4chan.org/b/res/423861837 --delay 5 --thumbsonly

Installation

The BASC-Archiver works on both Python 2.x and 3.x, and can be installed on Windows, Linux, or Mac OS X.

New stable releases can be found on our Releases page, or installed with the PyPi package BASC-Archiver.

Linux and OSX

  1. Make sure you have Python installed.

  2. Run easy_install basc-archiver

  3. Run thread-archiver http://boards.4chan.org/etc/thread/12345

Threads will be saved in ./archive, but you can change that by supplying a directory with the --path= argument.

Windows

  1. Download the latest release from our page.

  2. Open up a command prompt window (cmd.exe), and move to the directory with thread-archiver.exe

  3. Run thread-archiver.exe http://boards.4chan.org/etc/thread/12345

Using the Windows version will become simpler once we finish writing the GUI.

License

BASC-Archiver is licensed under the GNU Lesser General Public License v3.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

BASC-Archiver-0.8.5.tar.gz (8.5 kB view details)

Uploaded Source

File details

Details for the file BASC-Archiver-0.8.5.tar.gz.

File metadata

File hashes

Hashes for BASC-Archiver-0.8.5.tar.gz
Algorithm Hash digest
SHA256 b28544c5beba810d222d464147bb19eaca69d790b824bc61893c3014ed08d647
MD5 2ef1a65088a45cb59afbbc0eb9e5da26
BLAKE2b-256 bccf8f7d133651a038ac13765e12ab38a78657a9053766137dc45428d0c4a790

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page