semvec/pypi-packages huggingface dataset:
studatio 1.3.2
Personal tool for my violin teaching database
License: MIT
Requires Python: >=3.9,<3.11

# studatio

![PyPI](https://img.shields.io/pypi/v/studatio)

`studatio` is a Python tool for private music teachers to manage their studio's data.

I am primarily developing this for my own use as a violin teacher. However, I hope for the project to become useful to
other teachers. Currently, studatio pulls and formats Apple iCal data about music lessons for use in lesson schedules or
facility reservations.

I hope to add support for automated facility reservations, expanded business statistics, billing, and note-taking.

## Installation

First, [install Python](https://www.python.org/downloads/) if it is not already installed. Use the package
manager [pip](https://pip.pypa.io/en/stable/) to
install studatio.

```bash
pip install studatio
```

On first use, studatio will prompt you for a URL containing iCal data of your studio's calendar.

## Usage

```
Usage: studatio schedule [OPTIONS]

  Prints and copies to clipboard a formatted list of
  studio events.

Options:
  -m, --month TEXT    Integer, or range of ints
                      separated by a hyphen,
                      representing a month/s of the
                      year. Defaults to current
                      month.
  -y, --year INTEGER  Defaults to current year.
```

```
Usage: studatio elapsed [OPTIONS]

  Prints the time elapsed of events in the given
  period

Options:
  -m, --month TEXT    Integer, or range of ints
                      separated by a hyphen,
                      representing a month/s of the
                      year. Defaults to current
                      month.
  -y, --year INTEGER  Defaults to current year.
```

Examples:

```
% studatio schedule --month 1 --year 2022
Jan 01 2022 Violin Lesson 10:45 AM to 11:45 AM
Jan 07 2022 Violin/Viola Lessons 04:30 PM to 06:15 PM
Jan 08 2022 Violin Lesson 12:30 PM to 01:30 PM
Jan 18 2022 Violin Lesson 06:05 PM to 06:35 PM
Jan 21 2022 Violin Lessons 03:30 PM to 05:30 PM
Jan 28 2022 Viola Lesson 05:30 PM to 06:15 PM
```

`studatio schedule -m 10-12`

`% studatio elapsed --month 10 --year 2022
22 Hours, 0 Minutes Elapsed`

## Contributing

To build, you must install [poetry](https://python-poetry.org/) and [pre-commit](https://pre-commit.com/). Pull requests
are welcome. Documentation and test changes are just as
welcome as changes to source code.

I am an amateur programmer, but I always want to learn, so if there are things that work but are not best practices, I
would be eager to hear them.

## License
[MIT](https://choosealicense.com/licenses/mit/)
holidays-ru 0.1
Generate and work with holidays Russia in Python
License: MIT
Requires Python: >=3.7

===============
python-holidays
===============

A fast, efficient Python library for Russia country, province and state
specific sets of holidays on the fly.
It aims to make determining whether a specific date is a holiday as fast and
flexible as possible.

:Package:
    .. image:: https://img.shields.io/pypi/pyversions/holidays-ru.svg?logo=python&label=Python&logoColor=gold
        :target: https://pypi.python.org/pypi/holidays-ru
        :alt: Python supported versions

    .. image:: http://img.shields.io/pypi/v/holidays-ru.svg?logo=pypi&label=PyPI&logoColor=gold
        :target: https://pypi.python.org/pypi/holidays-ru
        :alt: PyPI version

    .. image:: https://img.shields.io/pypi/dm/holidays-ru.svg?color=blue&label=Downloads&logo=pypi&logoColor=gold
        :target: https://pypi.python.org/pypi/holidays-ru
        :alt: Downloads

:CD/CI:
    .. image:: https://github.com/xvlady/python-holidays-ru/actions/workflows/python-package.yml/badge.svg
        :target: https://github.com/xvlady/python-holidays-ru/actions/workflows/python-package.yml

    .. image:: https://coveralls.io/repos/github/xvlady/python-holidays-ru/badge.svg?branch=main
        :target: https://coveralls.io/github/xvlady/python-holidays-ru?branch=main

:Meta:
    .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
        :alt: Code style

    .. image:: http://img.shields.io/pypi/l/holidays.svg
        :target: LICENSE
        :alt: License

Install
-------

The latest stable version can always be installed or updated via pip:

.. code-block:: bash

    $ pip install --upgrade holidays-ru


Documentation
-------------

View Quick Start. You can use original library from other country and other functional https://python-holidays.readthedocs.io/


Quick Start
-----------

.. code-block:: python

    from datetime import date
    from holidays_ru import check_holidays, is_holidays

    check_holiday(date(2023, 1, 1))  # True
    check_holiday(date(2023, 1, 12)) # False
    check_holiday(date(2022, 12, 31)) # True
    check_holiday(date(2022, 12, 31), with_weekends=False) # False, it's Sunday
    is_holiday(date(2023, 1, 1))     # "New Year's Day"
    is_holiday(date(2023, 1, 12))    # ""
    is_holiday(date(2023, 1, 15))    # "Weekend"
    is_holiday(date(2023, 1, 15))    # "Moved weekend"
    is_holiday(date(2023, 1, 12))    # "", it's work Sunday


Contributions
-------------

.. _Issues: https://github.com/xvlady5/python-holidays-ru/issues
.. _pull requests: https://github.com/xvlady5/python-holidays-ru/pulls
.. _here: CONTRIBUTING.rst

Issues_ and `pull requests`_ are always welcome.  Please see
`here`_ for more information.

License
-------

.. __: LICENSE

Code and documentation are available according to the MIT License
(see LICENSE__).
prox-checker 0.1.0
Async python proxy checker
License: MIT
Requires Python: >=3.11,<4.0
Keywords: python,proxy,async,aiohttp,checker

# prox-checker
**Async python proxy checker**


### Features
- **Works in 2023**
- **No pycurl needed**, OS independent
- **HTTP, Socks4, Socks5**
- **Async**
- **Fast** (<= 1.5kb per check)
- Checks **availability** and **anonymity**
- **Secure**, no data collecting
- **Typed**


## Installation
`pip install prox-checker`

## Usage
```python
...

from prox_checker import ProxyChecker, ProxyProtocol, ProxyCheckerResult


async def check_my_proxies():
    proxies = [
        '144.24.207.98:8080',
        '103.169.130.51:5678',
        '198.58.126.147:51576',
        '45.79.155.9:3128',
        '206.220.175.2:4145',
    ]

    working_proxies: List[ProxyCheckerResult] = await ProxyChecker().check_proxies(
        proxies=proxies,
        proxy_async_limit=1_000,
        protocol_async_limit=3,
        response_timeout=5,
    )

    print(working_proxies)
    '''
    Output: 
    [
        <ProxyCheckerResult url=http://144.24.207.98:8080 proxy=144.24.207.98:8080 protocol=ProxyProtocol.http>, 
        <ProxyCheckerResult url=socks4://198.58.126.147:51576 proxy=198.58.126.147:51576 protocol=ProxyProtocol.socks4>, 
        <ProxyCheckerResult url=socks5://198.58.126.147:51576 proxy=198.58.126.147:51576 protocol=ProxyProtocol.socks5>,
        <ProxyCheckerResult url=socks4://206.220.175.2:4145 proxy=206.220.175.2:4145 protocol=ProxyProtocol.socks4>, 
        <ProxyCheckerResult url=socks5://206.220.175.2:4145 proxy=206.220.175.2:4145 protocol=ProxyProtocol.socks5>
    ]
    
    Leaves only anon working proxies, separated by protocols
    '''
    socks5_urls = [
        result.url
        for result in working_proxies
        if result.protocol == ProxyProtocol.socks5
    ]
    print(socks5_urls)  # ['socks5://198.58.126.147:51576', 'socks5://206.220.175.2:4145']

    max_bandwidth_bytes_s = ProxyChecker.estimate_max_bandwidth_bytes_s(
        proxy_async_limit=1_000,
        protocol_async_limit=3,
    )
    max_bandwidth_mb_s = max_bandwidth_bytes_s / 1024 / 1024
    print(max_bandwidth_mb_s)  # 4.39453125

    custom_judges = [
        'http://proxyjudge.us',
        'http://azenv.net/',
    ]
    custom_judges_working_proxies = await ProxyChecker(judges=custom_judges).check_proxies(
        proxies=proxies,
        proxy_async_limit=1_000,
        protocol_async_limit=3,
        response_timeout=5,
    )
    print(custom_judges_working_proxies)  # same as first

...

```