Mandatory requirements are required to run urlwatch. Depending on what optional features you want to use, you might also need to install additional packages – however, those are not needed to run urlwatch.

Mandatory Packages

The dependencies can be installed with (add --user to install to $HOME):

python3 -m pip install pyyaml minidb requests keyring appdirs lxml cssselect

Optional Packages

Optional packages can be installed using:

python3 -m pip install <packagename>

Where <packagename> is one of the following:

Feature Python package(s) to install
Pushover reporter chump
Pushbullet reporter
Matrix reporter matrix_client and markdown2
stdout reporter with color on Windows colorama
browser job kind pyppeteer
Unit testing pycodestyle, docutils,
Documentation build Sphinx
beautify filter beautifulsoup4; optional dependencies (for <script> and <style> tags): jsbeautifier and cssbeautifier
pdf2text filter pdftotext and its OS-specific dependencies (see the above link)
ocr filter pytesseract and Pillow and Tesseract OCR)
XMPP reporter aioxmpp