Skip to main content

Web Changes Delivered. AI-Summarized. Totally Anonymous.

Project description

webchanges anonymously checks web content (including images) and commands for changes, delivering instant notifications and AI-powered summaries to your favorite platform.

Requirements

webchanges requires Supported Python versions.

For the best experience, use the current version of Python. We also support older Python versions for 3 years after they’re replaced by a newer one; we just ask that you use the most up-to-date bug and security fix release from that older version.

For Generative AI summaries (BETA), you need a free API Key from Google Cloud AI Studio (see here).

Installation

Install webchanges PyPI version Kit format Package stability Security Status with:

pip install webchanges

Running in Docker

webchanges can easily run in a container; you can find a Docker implementation here.

Documentation Documentation status

The documentation is hosted on Read the Docs.

Quick Start

Initialize

  1. Run the following command to create the default config.yaml (configuration) and jobs.yaml (jobs) files and open an editor to add your jobs:

    webchanges --edit
  2. Run the following command to change the default configuration, e.g. to receive change notifications (”reports”) by email and/or one of many other methods:

    webchanges --edit-config

Run

To check the sources in your jobs and report on (e.g. display or via email) any changes found from the last time the program ran, just run:

webchanges

Schedule

webchanges leverages the power of a system scheduler:

  • On Linux you can use cron, and a tool like crontab.guru can build a schedule expression for you (note: see here if you have never used cron before);

  • On Windows you can use Windows Task Scheduler;

  • On macOS you can use launchd (note: see here if you have never used launchd before).

Code

Code coverage by Coveralls Issues at https://github.com/mborsetti/webchanges/issues

The code and issues tracker are hosted on GitHub.

Contributing

We welcome any contribution no matter how small, both as pull requests or issue reports.

More information for code and documentation contributors is here, and our wishlist is here.

License

License at https://pypi.org/project/webchanges/

See the complete licenses (released under the MIT License but redistributing modified source code, dated 30 July 2020, from urlwatch 2.21 licensed under a BSD 3-Clause License).

Compatibility with and improvements from urlwatch

This project is based on code from urlwatch 2.21 dated 30 July 2020.

You can easily upgrade to webchanges from the current version of urlwatch using the same job and configuration files (see here) and benefit from many improvements, including:

  • AI-Powered Summaries: Summary of changes in plain text using generative AI, useful for long documents (e.g. legal);

  • Image Change Detection: Monitor changes to images and receive notifications with an image highlighting the differences;

  • Structured Data Monitoring: Track changes in JSON or XML data on an element-by-element basis;

  • Improved Documentation: We’ve revamped the documentation to make implementation easier;

  • Enhanced HTML Reports: HTML reports are now much clearer and include:

    • Clickable links!

    • Retention of most original formatting (bolding / headers, italics, underlining, lists with bullets (•), and indentation;

    • added and deleted lines clearly highlighted with color and strikethrough;

    • Wrapping of long lines (instead of truncation);

    • Improved compatibility with a wider range of HTML email clients, including those that override stylesheets (e.g., Gmail);

    • General legibility improvements.

  • New Filtering Options: New filters, like additions_only, which allows you to focus on added content without the distraction of deletions;

  • New Command Line Arguments: New command-line arguments such as --errors, which helps you identify jobs that are no longer functioning correctly;

  • Increased Reliability and Stability: Testing coverage has increased by approximately 30 percentage points;

  • Additional Enhancements: Numerous other additions, refinements, and bug fixes have been implemented. For more information, see here.

Example enhancements to HTML reporting:

https://raw.githubusercontent.com/mborsetti/webchanges/main/docs/html_diff_filters_example_1.png

https://raw.githubusercontent.com/mborsetti/webchanges/main/docs/html_diff_filters_example_3.png

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

webchanges-3.28.0rc0.tar.gz (142.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

webchanges-3.28.0rc0-py3-none-any.whl (145.0 kB view details)

Uploaded Python 3

File details

Details for the file webchanges-3.28.0rc0.tar.gz.

File metadata

  • Download URL: webchanges-3.28.0rc0.tar.gz
  • Upload date:
  • Size: 142.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for webchanges-3.28.0rc0.tar.gz
Algorithm Hash digest
SHA256 c17dad5dfab7cb0d035ada93ddc01e99a2af55fa7996df460eb5969e20cf56a2
MD5 6982fc518c80932f3fabddc31938b8e0
BLAKE2b-256 d705580c2bfc1d33f36771fdeff0974368169325b3f7098faa5ae25f1da8569e

See more details on using hashes here.

Provenance

The following attestation bundles were made for webchanges-3.28.0rc0.tar.gz:

Publisher: ci-cd.yaml on mborsetti/webchanges

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file webchanges-3.28.0rc0-py3-none-any.whl.

File metadata

  • Download URL: webchanges-3.28.0rc0-py3-none-any.whl
  • Upload date:
  • Size: 145.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for webchanges-3.28.0rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 712c8bedc0f7d26272a137dee02e6d74c8eca374c91cb21e8129eae4ce20e463
MD5 1f7db8b4951a989e8bf98974836526fb
BLAKE2b-256 d6d3d88e98fa03ae837c4cb9f677bbacc1ed84955cee2b4016be0c7019fe9a9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for webchanges-3.28.0rc0-py3-none-any.whl:

Publisher: ci-cd.yaml on mborsetti/webchanges

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page