Skip to main content

monotiring exact data (urlTag) and alert on changes by email/telegram (threading)

Project description

monitor_utils

IMPORTANT!

NOT ALL WEBSITES WORKS! Sportmaster/Acra-rating/...

INSPIRATION

Suppose you wish to give blood to the Center. So nowadays you need to make an appointment by website, BUT you can't do this while the Center actually don't need your group. Group necessity shown on Center website and called DonorSvetofor. And as result you need monitoring it manually, because there are no news, email notifications, subscriptions. It's not difficult but if you do it as day routine (even once a day) its quite distracting.

So I created it first as Monitor_DonorSvetofor

Features

  1. Threading each monitor
  2. monitor
    • website data changes
      • tag text
      • tag attribute
    • email received with subject (by regexp) in exact folder
  3. Email/Telegram alert if
    • monitored data changed (from last state)
    • html structure was changed so parsing can't be finished
    • url became unreachable

License

See the LICENSE file for license rights and limitations (MIT).

Release history

See the HISTORY.md file for release history.

Installation

pip install monitor-utils

Import

from monitor_utils import *

GUIDE

See tests and source for other examples.

1. change or apply auth private data (see private_values)

2. create new desired class for your purpose

See monitor_url_tag__implements.py for examples.

MonitorUrlTag

from monitor_utils import *

class Monitor_CbrKeyRate(MonitorUrlTag):
    """
    MONITOR CentralBankRussia KeyRate

    # STRUCTURE to find -------------------------------------
<div class="table-wrapper">
  <div class="table-caption gray">% годовых</div>
  <div class="table">
    <table class="data">
      <tr>
        <th>Дата</th>
        <th>Ставка</th>
      </tr>
      <tr>
        <td>17.08.2023</td>
        <td>12,00</td>
      </tr>
      <tr>
        <td>16.08.2023</td>
        <td>12,00</td>
      </tr>
      <tr>
        <td>15.08.2023</td>
        <td>12,00</td>
      </tr>
      <tr>
        <td>14.08.2023</td>
        <td>8,50</td>
      </tr>
      <tr>
        <td>11.08.2023</td>
        <td>8,50</td>
      </tr>
      <tr>
        <td>10.08.2023</td>
        <td>8,50</td>
      </tr>
    </table>
  </div>
  <div class="table-caption">
    <p>
	  Данные доступны с  17.09.2013 по 17.08.2023.
	  </p>
  </div>
</div>
    """
    URL = "https://cbr.ru/hd_base/KeyRate/"
    TAG_CHAINS = [
        TagAddressChain("div", {"class": "table-wrapper"}, None, 0),
        TagAddressChain("td", {}, None, 1),
    ]
    TAG_GET_ATTR = None
    value_last = "12,00"

MonitorImap

see source

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

monitor_utils-0.0.3.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

monitor_utils-0.0.3-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file monitor_utils-0.0.3.tar.gz.

File metadata

  • Download URL: monitor_utils-0.0.3.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for monitor_utils-0.0.3.tar.gz
Algorithm Hash digest
SHA256 661bcfe90a9565d53e355883bd3aa872ca310282a22b459216c8bd4cf88dd036
MD5 8a975c402beaa7c26e2380bc9cdb145c
BLAKE2b-256 0184e8af57c62ed49405a00cd7e90d7eddf1ad79c89926021dddce1487b63d10

See more details on using hashes here.

Provenance

File details

Details for the file monitor_utils-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for monitor_utils-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2b33d69a476f33ed0b5ccaf101efaf867348936aff4ed9ec9feb460272b519f2
MD5 3051f687078c4da115e9992c6968701a
BLAKE2b-256 444590195b1972ba67a3e14ed3248ba48d94f2cd26771964226d1af61e7ecaa5

See more details on using hashes here.

Provenance

Supported by

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