Giter Site home page Giter Site logo

sitemon's Introduction

SiteMon

SiteMon tracks changes in site contents as set up in the ini file, using CSS selectors, Xpath, or regular expressions. JS is supported*. Passworded pages and browser cookies are not, yet. Definitely works on CPython 3.10.5 w64 and PyPy 3.9 w64.

As output, it sends to stdout the space-separated list of "pages" that changed, as well as adds them to a report file with timestamps.

(* The script renders JS using Chromium, so it will download Chromium to ~/.pyppeteer (or %LOCALAPPDATA%/pyppeteer/) on first JS request.)

Installation

For CPython:

python3 -m ensurepip
python3 -m pip install --upgrade pip
python3 -m pip install keyboard requests_html

For PyPy 3.9 (works faster):

If you're working with Windows, you'll want to install lxml from the corresponding wheel first.

Now, a pp39 wheel for lxml... does not exist. Trying to do pip install lxml makes pip plop halfway. I built mine for w64, here (SHA1 = 7f6ca65ad4d6a268777e5c3e594afccc968447d2 :: malware-free). Download the file, run cmd.exe in your Download folder, then finally install the prerequisites:

pypy3 -m ensurepip
pypy3 -m pip install --upgrade pip
pypy3 -m pip install lxml-4.9.0-pp39-pypy39_pp73-win_amd64.whl
pypy3 -m pip install keyboard requests_html

If it breaks, I hope there's an official binary for py39 by then...

Options

-h, --help            show this help message and exit
-c X, --config X      an ini file with the settings (default: ./sitemon.ini)
-C X, --continuity X  a JSON continuity file (default: ./sitemon.json)
-r X, --report X      the report file (default: ./sitemon.report.txt), "nul" for console-only
-f, --force           force re-check all pages
-t N, --retries N     do N retries downloading a page, -1 for infinite (default: 3)
-p, --pause           waits for a keypress before closing
-s, --sslcheck        perform SSL issue check (default: no checks)
-v, --verbose         verbose console output (multiple allowed)
-q, --quiet           no console output, overrides --verbose (multiple allowed)

Please read the sample config file for more instructions.

sitemon's People

Contributors

kaens avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.