Core Python Web Archiving Toolkit for replay and recording of web archives
Python JavaScript HTML CSS Arc Shell
Clone or download
Latest commit a52fdee Jul 7, 2018
Failed to load latest commit information.
.github Add issue and pull request templates (#353) Jul 6, 2018
ca update CHANGES, config.yaml docs for proxy mode Sep 7, 2014
docs text updates: (#352) Jun 27, 2018
karma-tests karma fixes: avoid accessing undef var Mar 14, 2017
pywb wombat.js: default_proxy_get improvement Facebook fix (#350) Jun 21, 2018
sample_archive warcserver: resource load: only read headers for self-redirect for re… Nov 30, 2017
tests slash redirects: if a capture ends with '/' (with or without a query)… Jun 14, 2018
tests_disabled setup: fix for pypi build: remove obsolete 'provides=', package init … Jan 30, 2018
.coveragerc Add CodeCov (#282) Jan 17, 2018
.dockerignore range request fixes: (#266) Nov 22, 2017
.editorconfig Add editorconfig file that documents JS conventions in this repo Nov 25, 2015
.gitattributes cli: improve wayback cli to take optional port, threads and working d… Mar 23, 2015
.gitignore New Documentation (#252) Oct 5, 2017
.travis.yml Add CodeCov (#282) Jan 17, 2018
CHANGES.rst text updates: (#352) Jun 27, 2018
Dockerfile Text tweaks/Dockerfile update (#288) Jan 30, 2018
INSTALL.rst tweak CHANGES.rst and INSTALL.rst for release Mar 24, 2015
LICENSE Initial commit Dec 9, 2013
README.rst client-side top-frame notification fix: Feb 13, 2018
Vagrantfile Update README (move pywb configuration section to wiki), Mar 5, 2014
appveyor.yml appveyor fix: use 'python -m pip' to upgrade pip (pypa/pip#5240) Apr 20, 2018
config.yaml include the collection in Memento Link outputs: (#259) Oct 23, 2017
extra_requirements.txt Handle amf requests (#321) May 22, 2018
package.json Add configuration for running client tests using Sauce Labs Nov 25, 2015
requirements.txt text updates: (#352) Jun 27, 2018 Correct error message in Dec 17, 2014 pywb 0.2! Feb 17, 2014 uwsgi: run with gevent loop by default, install gevent in run script Mar 23, 2015 Handle amf requests (#321) May 22, 2018
uwsgi.ini docs: add sample nginx config to deployment section, mention how http… Apr 3, 2018


Webrecorder pywb 2.0

Web Archiving Tools for All

View the full pywb 2.0 documentation

pywb is a Python (2 and 3) web archiving toolkit for replaying web archives large and small as accurately as possible. The toolkit now also includes new features for creating high-fidelity web archives.

This toolset forms the foundation of Webrecorder project, but also provides a generic web archiving toolkit that is used by other web archives, including the traditional "Wayback Machine" functionality.

New Features

The 2.0 release includes a major overhaul of pywb and introduces many new features, including the following:

  • Dynamic multi-collection configuration system with no-restart updates.
  • New recording capability to create new web archives from the live web or other archives.
  • Componentized architecture with standalone Warcserver, Recorder and Rewriter components.
  • Support for Memento API aggregation and fallback chains for querying multiple remote and local archival sources.
  • HTTP/S Proxy Mode with customizable certificate authority for proxy mode recording and replay.
  • Flexible rewriting system with pluggable rewriters for different content-types.
  • Significantly improved client-side rewriting to handle most modern web sites.
  • Improved 'calendar' query UI, grouping results by year and month, and updated replay banner.

Please see the full documentation for more detailed info on all these features.


To run and install locally you can:

  • Install with python install
  • Run tests with python test
  • Run Wayback with wayback (see docs for info on how to setup collections)
  • Build docs locally with: cd docs; make html. (The docs will be built in ./_build/html/index.html)

Consult the local or online docs for latest usage and configuration details.

Contributions & Bug Reports

Users are encouraged to fork and contribute to this project to keep improving web archiving tools.

A few key features are high on list of priorities, but have not yet been implemented, including:

  • Url Exclusion System
  • UI Improvements

If you are interested in contributing, especially to any of these areas, please let us know!

Otherwise, please take a look at list of current issues and feel free to open new ones about any aspect of pywb, including the new documentation.