/quickshot

Make a quick visualdiff between two pages.

Primary LanguagePythonApache License 2.0Apache-2.0

quickshot

Make a quick visualdiff between two pages or png files.

Requirements

Currently Quickshot only uses the Geckodriver webdriver. Downloading and installing Firefox may be sufficient to get you set up.

Ensure Firefox is in your path after installing.

You may also need to install Geckodriver separately.

  • On a Mac run, brew install geckodriver
  • For Windows or Unix binaries see the release section of the Geckodriver project page.

You should also have ImageMagick installed. Test if you already have ImageMagick installed by running, convert -version in your terminal.

Installing ImageMagick

Installation

Via Pip

  • Run pip install quickshot

From source

  • Set up a virtuanenv in some fashion, vex --python /usr/local/bin/python3 -m quickshot
  • Install dependencies pip3 install -r requirements.txt

ini files

You can add credentials to sign in to a web form in a file called 'quickshot.ini'.

Since the .ini is included in the .gitignore file, (To help prevent you from committing your credentials to the cloud), you'll first need to create it.

Each block can contain an login and password items.

Quickshot will attempt to use webdriver.find_element_by_name() to locate elements on the page that correspond to these values.

An example configuration block might look like;

[example]
login = doe@example.com
password = foobar

Usage

Quickshot takes two required arguments being the urls of the two pages you want to compare. python quickshot.py "http://www.google.com" "http://www.google.fr"

There are also some optional arguments;

  • -w, --wait, length in seconds to wait after loading a page before taking a screenshot.
  • -i, --ini, named section to load from quickshot.ini configuration file.
  • -f, --files, flag allowing you to pass in names of .png files stored in /screenshots instead of urls.