Skip to content
Web service to estimate the damage that exists on a memento
CSS JavaScript HTML Python Other
Branch: master
Clone or download
machawk1 Merge pull request #20 from oduwsdl/machawk1-patch-1
Add periods in literal messages on homepage.
Latest commit 9efe86d Mar 28, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
memento_damage Add periods in literal messages on homepage. Mar 28, 2019
.gitignore Propose version 2.0 Jan 11, 2017
Dockerfile Remove unused images. Update docker maintainer. Oct 6, 2017
LICENSE Add license file for #6 Jan 22, 2017
MANIFEST handling 403, normalized resUrl Apr 1, 2017 update markdown May 8, 2017 Fix dockerfile Feb 1, 2017

Memento Damage

Memento Damage is a tool that helps to estimate the damage that happens on a memento. Although the main idea is to calculate damage on memento (URI-M), this tool can also be used for calculating damage on a live web page (URI-R).
There are 2 ways to use this tool:

Online Service


The website version can be used by accesing This service is suitable for the purpose of finding the damage of single URI. To use the tool, user just simply type or paste the URI to the damage-check textbox form, and type enter or click check button.

The output will be displayed on the result page, on tab ‘summary’. Other tabs in the result page provide the details of the damage according to the resources types: images, stylesheets, javascript, multimedia, and text. Tab ‘screenshot’ provide the screenshot of the URI and tab ‘log’ gives the details of the process that happens during the damage calculation.


REST API facilitates damage calculation from any HTTP Client (e.g. web browser, curl, etc) and give output in JSON format. This enables user to do further analysis with the output. User can create a script and utilize the REST API to calculate damage on few number of URIs (e.g. 5). Here are some simple examples of accessing memento-damage service using REST API:




import requests
resp = requests.get('')
print resp.json()

Local Service

This option is suitable for calculating the damage on a myriad number of URIs (e.g. 10.000 URIs). The web service clearly cannot handle this. Therefore, we provide an option so that users can install and run the Memento Damage tool on their own machine.

There are 2 (two) ways to use Memento Damage tool in local machine: using Docker or library. Using docker is recommended since user does not need to worry about system dependencies.


First, install docker in your machine, and make sure docker daemon is started. Please refer to this steps on how to install docker:

Pull the docker image of memento-damage from: erikaris/memento-damage:

docker pull erikaris/memento-damage

Run the container for the image:

docker run -i -t -P --name memento-damage erikaris/memento-damage:latest /app/

Then, user can start executing memento-damage tool from within docker container or outside docker container.

Inside Container

Attach the container:

docker attach memento-damage

Alternatively, use exec:

docker exec -it memento-damage bash

Then, start using memento-damage by typing the command:

memento-damage [options] <URI>

Explore available options by typing:

memento-damage --help

Outside Container

We can also executing memento-damage without entering container using:

docker exec memento-damage memento-damage [options] <URI>


Using library is relatively similar to using docker. The installation process is much simpler and faster than the docker version. But user has to ensure that all the requirements (phantomjs 2.xx and python 2.7) are installed on their machines.
Download the latest library version from
Install the library using command:

sudo pip install memento-damage-x.x.x.tar.gz

Start using the tool by typing the command ‘memento-damage’, which is similar to that of the docker version.

You can’t perform that action at this time.