Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install Urlwatch with pip inside a Python virtual environment, not into Ubuntu’s system Python. From your project directory, run the following commands:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade urlwatch
urlwatch --version

Install Urlwatch in a virtual environment

  1. Open a terminal and change to the directory where you want the environment. If you do not have a project directory yet, create one and enter it:

    mkdir urlwatch-project
    cd urlwatch-project
  2. Create a virtual environment named .venv:

    python3 -m venv .venv
  3. Activate it in the current terminal:

    source .venv/bin/activate
  4. Install or upgrade Urlwatch:

    python -m pip install --upgrade urlwatch
  5. Check that the command is available and prints a version number:

    urlwatch --version

Keep using this environment when you run Urlwatch. In a new terminal session, return to the project directory and run source .venv/bin/activate again. To leave the environment, run deactivate.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why use a virtual environment on Ubuntu?

A virtual environment isolates Urlwatch and its Python packages from Ubuntu’s system Python. This matters especially on Ubuntu 23.04 and newer, where system Python may be marked externally managed under PEP 668. A pip command aimed at that system Python can fail with an externally-managed-environment error. Creating and activating a venv first directs the installation into the isolated environment instead.

If python3 -m venv .venv says that venv support is unavailable, install the venv support package appropriate for your Ubuntu release and Python version, then rerun the command. Check the package manager for your release rather than assuming a version-specific package name.

Requirements and optional features

Urlwatch 2.29 documents support for Python 3.8 or newer. Its required dependencies include PyYAML, minidb, requests, keyring, platformdirs, lxml, and cssselect. Installing Urlwatch with pip normally installs its declared dependencies automatically.

Some Urlwatch features have additional optional dependencies. For example, browser jobs can require Playwright, and certain reporters or filters need other packages. Install optional packages only when you plan to use the feature that requires them.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Troubleshoot installation problems

externally-managed-environment

Cause: pip is targeting Ubuntu’s system Python rather than an isolated environment.

Fix: From your project directory, create and activate a venv, then repeat the install:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade urlwatch

urlwatch: command not found

Cause: The virtual environment may not be active, so its bin directory is not on the shell’s PATH.

Fix: From the directory containing .venv, run source .venv/bin/activate, then retry urlwatch --version.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Python reports that venv support is missing

Cause: The venv component for the installed Ubuntu/Python combination is unavailable.

Fix: Use Ubuntu’s package manager to identify and install the venv support package for your release, then retry python3 -m venv .venv.

Other ways to install Urlwatch

Use Ubuntu’s apt package

Ubuntu also distributes Urlwatch through apt, but the packaged version depends on the Ubuntu suite. For example, the Jammy package index lists 2.24-1, while the Questing manpage describes 2.29-1. If you specifically want pip, use the virtual-environment procedure above rather than treating apt and pip as interchangeable version sources.

Use pipx as an application manager

On Ubuntu 23.04 and newer, pipx is another option for installing Python command-line applications in isolated environments and making their commands available on PATH. Its documented Ubuntu setup is:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo apt update
sudo apt install pipx
pipx ensurepath

Choose pipx if you want an application manager to handle the isolated environment; choose the venv steps when you want to manage Urlwatch within a particular project or environment.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

Urlwatch monitors pages; ScreenshotNeo is a separate website screenshot API and MCP server for developers. If your task is to capture a page rather than monitor changes, a single GET request can return an image or PDF:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for parameters. It accepts cookie banners and removes known consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, and failed loads are not billed. Its MCP server gives AI agents screenshot tools. The free plan includes 1,000 shots per month with no card, and paid plans start at $5 for 3,000 shots. Learn more at ScreenshotNeo.

Sign up for ScreenshotNeo’s free plan: 1,000 screenshots a month, no card required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.