semvec/pypi-packages huggingface dataset:
aogn 0.1.3
Asynchronous APRS OGN (Open Glider Network) Client for asyncio and Python.
Requires Python: >=3.7

## Introduction

**AOGN** is an **A**synchronous **OGN** ([Open Glider Network](http://wiki.glidernet.org/)) client for modern Python.
It connects to the APRS servers and receives the planes', gliders', receivers', etc. APRS messages, 
while still allowing you control of the program flow.

This can simplify programs since:
1. There are no callback or blocking functions (e.g. `listen()` or `run_forever()`).
2. One script/thread/process can still do other useful out-of-band tasks like
computing aggregate statistics and making web requests.

To interpret the raw OGN messages, use a function like
[python-ogn-client's](https://github.com/glidernet/python-ogn-client) `ogn.parser.parse`.


## Installation

```
pip install aogn
```

## Usage

Basic example:

```python
import asyncio
import logging
import sys

import aogn

logging.basicConfig(
    stream=sys.stdout,
    level=logging.DEBUG,
    format='%(asctime)s %(levelname)s %(module)s %(message)s',
    datefmt='%b %d %H:%M:%S',
)


async def example() -> None:
    conn = aogn.Client(aprs_user='NO-CALL', )

    try:
        while True:
            # Get the APRS packet once available:
            raw_message = await conn.packet()
            logging.debug(raw_message)
    except KeyboardInterrupt:
        logging.info('OGN Gateway stopped.')

    await conn.disconnect()


if __name__ == '__main__':
    asyncio.run(example())
```

---


Concurrent example, with raw_message [parsing](https://github.com/glidernet/python-ogn-client):

```python


import asyncio
import logging
import sys

logging.basicConfig(
    stream=sys.stdout,
    level=logging.DEBUG,
    format='%(asctime)s %(levelname)s %(module)s %(message)s',
    datefmt='%b %d %H:%M:%S',
)

from aogn import Client

from ogn.parser import parse, ParseError


def process_beacon(raw_message):
    beacon = {}
    try:
        beacon = parse(raw_message)
    except ParseError as err:
        logging.warning(f'ParseError: {err}')
    except NotImplementedError as err:
        logging.error(f'NotImplementedError: {err}')
    except AttributeError as err:
        logging.error(f'raw_message: {raw_message}')
        logging.error(f'beacon: {beacon}')
        logging.error(err)
    return beacon


async def example() -> None:
    conn = Client(aprs_user='NO-CALL', )  # aprs_filter='t/s')

    try:
        while True:
            raw_message = await conn.packet()
            if raw_message:
                beacon = process_beacon(raw_message)
    except KeyboardInterrupt:
        logging.info('OGN Gateway stopped.')

    await conn.disconnect()


async def another_io_function() -> None:
    import random

    while True:
        sleep_duration = 120 * random.random()
        logging.debug(f'Concurrently sleeping for {sleep_duration:.0f} seconds...')
        await asyncio.sleep(sleep_duration)


async def main():
    await asyncio.gather(example(), another_io_function())


if __name__ == '__main__':
    asyncio.run(main())
```
dedup-img 1.0.2
imagededup图片查重封装使用
Requires Python: >=3

## dedup-img

### 描述
 dedup-img是一个基于imagededup库做封装的图片去重库，使用本地web做UI展示，所以该库依赖于:
 1. imagededup: 图片去重
 2. flask: 生成本地web，用于展示和操作图片去重后的分类展示
 3. pillow: 生成缩略图

### 安装
> pip install dedup-img

### 使用

图片去重命令
> dedup -P -d e:/Pictures

选项解析

-P 图片去重算法

| 选项 | 使用说明 |
| --- | --- |
| -P | 感知哈希（PHash） |
| -A | 平均哈希（AHash） |
| -D | 差异哈希（DHash） |
| -W | 小波哈希（WHash） |

-d 后接需要去重的图片的所在文件夹

执行去重命令后会在图片所在文件夹里生成若干文件

浏览去重后的图片数据展示
> flask-web e:/Pictures
platypy 3.1.2
This platypy which have many submodules to help you.
Keywords: python,calculator,calci,calculate,calculation,Arithmetic


<h1>Platypy - A python module</h1>
This module has a new  feature called <strong>coolcalci.</strong> This coolcalci sub module
will help you to do arithmetic operations very fast and if you want this colcalci as an 
different module you can install it by the give link : 
<a href="https://pypi.org/project/Coolcalci/">https://pypi.org/project/Coolcalci/</a>
and if you want install it by cmd (command prompt) you can type this command:

<code><strong> pip install Coolcalci </strong></code>

and to import it in platypy so you have to type first to install it :

<code><strong> pip install platypy </strong></code>

to import it in your project type this : 

><strong>import platypy</strong>
>
><strong>from platypy.coolcalci import *</strong>
# To add something from coolcalci
to add something:
><strong>from platypy.coolcalci import *</strong>
> 
><strong>res = add(1 + 2)</strong>
> 
><strong>print(res)</strong>

<h1>To create questions</h1>
This submodule <code><strong>createquestionsandanswers</strong></code> will help you to create quiz and make questions
very fast because people would sometimes make many questions in 50 lines of code but this submodule will take 1 line and 
to install it type this command:
<br>
<code><strong>Pip install platyquest</strong></code>
to import it in your project:

><strong>from platyquest import *</strong>
> 
> <strong>from platypy.createquestionsandanswers import * // to import it from platypy 
> 
> ###### its not a copyright as it is created by me platyquest and platypy.createquestionsandanswers</strong>
you can create quiz by this command:
><strong>createquiz() <-- fill the important requirements </strong>

for creating a single question:
> <strong>question() <-- fill the requirements</strong>

# To Change the font of alphabhet
From this package in platypy you can change the font of alphabhets. The name of this pakage is <code><strong>Fontschanger</strong></code> you can install it from cmd (Command prompt) <code><strong>Pip install platypy.Fontschanger</strong></code> or you can:
>Pip install Fontsfort
>###### This isn't a copyright as you can see the username of module owner is same
To Use this package you have to type the basic command:
><code><strong>from platypy.Fontschanger</strong></code>
> 
> fontchange(Alphabhet='<input>')          <-- Fill the requirements

Other commands you can learn on my channel : 
<br>
<a href = "https://www.youtube.com/channel/UCsP5fIAdguQF0muRke5J3zg">https://www.youtube.com/channel/UCsP5fIAdguQF0muRke5J3zg</a>