Skip to main content

A simple API to retrieve screenshots of webpages stored on the Wayback Machine.

Project description

WaybackShot

PyPI

A simple API to retrieve screenshots of webpages stored on the Wayback Machine.

Installation

pip install waybackshot

How to use it

A basic example of how to use WaybackShot is the following:

from waybackshot import WaybackShot
wayback_shot = WaybackShot()

wayback_shot.screenshot("https://www.example.com/")

This will save the most recent archived version of the website https://www.example.com/ in the current folder.

For more flexibility, the following parameters can be passed to the screenshot method:

  • url: URL to request screenshot for.
  • date: (optional) Date to request screenshot for in format YYYYMMDD. If not specified, the most recent screenshot will be returned.
  • filename: (optional) Filename to save screenshot as. If not specified, the URL will be used.
  • dir: (optional) Path to save screenshot to. If not specified, the screenshot will be saved to the current working directory.
  • width: (optional) Width of the screenshot. If not specified, the default width of 1920 will be used.
  • overwrite: (optional) If True, the screenshot will be overwritten if it already exists, otherwise it will not be overwritten.
  • include_date: (optional) If True, the screenshot will be saved with the date of the snapshot, otherwise without it.

A full example might look like this:

from waybackshot import WaybackShot
wayback_shot = WaybackShot()

wayback_shot.screenshot(
        url="https://www.example.com/",
        date="20220520",
        filename="example-filename",
        dir="images",
        width=1920,
        overwrite=True,
        include_date=True,
    )

This will safe the screenshot of https://www.example.com/ from the closest match to the given date in a folder named images with a width of 1920px. If an image with the same name in the same folder already exists, it wil be overwritten. Further, the filename includes the date of the retrieved snapshot as well as uses the specified filename.

Development

If you wish to contribute to this package, be sure to follow the steps provied.

Prerequisites

Before you can start, you have to install all packages used in this package.

pip install -r requirements.txt

This will install the following packages:

  • requests
  • selenium
  • webdriver_manager

Furthermore, Python Version 3.9 is needed.

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

waybackshot-0.2.1.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

waybackshot-0.2.1-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file waybackshot-0.2.1.tar.gz.

File metadata

  • Download URL: waybackshot-0.2.1.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for waybackshot-0.2.1.tar.gz
Algorithm Hash digest
SHA256 60941e0d8efc3696630217e146d74b3bd1449a8b7082c8d0124c12ce12978ff7
MD5 9d799f0907ff581dfe310d3c61ce5ff2
BLAKE2b-256 80d6aa136d187ce4dac2b4d6f1cbc7832ca71126890dc4444ac7bd883644e9a0

See more details on using hashes here.

File details

Details for the file waybackshot-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: waybackshot-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for waybackshot-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 714fe27627f4b16db26c1b70d1b8e53e5cc577179d8a7ef9ee6ceb3c98ab75c6
MD5 bb8c519b295e97ae5f7502e68f65dc64
BLAKE2b-256 9808e51016903ba0d86cd0c68c2bb33333e38c39ff6b0cd89f8d0cf2aaa22c00

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