semvec/pypi-packages huggingface dataset:
weenect-api 0.1
Python wrapper for interfacing with the Weenect REST API
Requires Python: >=3.7, <4
Keywords: weenect,api,rest,gps

# weenect-api

Python wrapper for interfacing with the [Weenect](https://weenect.com/) REST API.

# Installation

Tested on Python 3.8.

```
pip install weenect-api
```

# Usage

```python
from weenect_api import WeenectApi
from pprint import pprint

# If no arguments are passed, the values can be loaded from
# the environment through
# WEENECT_API_USER and WEENECT_API_PASS
api = WeenectApi("user@example.com", "$uper$ecret")
tids = api.tracker_ids
print(f"Available trackers for user: {api.username}: {tids}")
for tid in tids:
    print(f"TRACKER {tid} | Position")
    pprint(api.get_position(tid))
```

### Sample datapoint

`WeenectApi#get_position()` returns data directly from the REST API - `dict`s of the form

```json
{
  "battery": 45,
  "cellid": "12345-0000-0000",
  "cid": 0,
  "confidence": null,
  "date_server": "2020-11-09T17:00:00+00:00",
  "date_tracker": "2020-11-09T17:00:09+00:00",
  "direction": 0,
  "geofence_name": "Home",
  "gsm": 15,
  "id": "5fa97ba4fafad8a4da2749a0",
  "is_online": true,
  "lac": 0,
  "last_message": "2020-11-09T17:28:10+00:00",
  "latitude": 50.7801595,
  "longitude": 6.0857083,
  "mcc": 0,
  "mnc": 0,
  "original_battery": 44,
  "pdop": 1.12,
  "radius": 11,
  "satellites": 9,
  "speed": 0.0,
  "type": "ALM-R",
  "valid_signal": false
}
```
prio-merge 0.0.2
Merge nested dicts according to a few specific rules
Requires Python: >=3.6

# Prio merge

Merge two dictionaries on a deep level with one taking precedent over another,
and by using a few rules:

If keys exist in just one of the dictionaries, it will be merged in the final dictionary

If two keys exist in the same nested depth, one of these things will happen
* if the values have different types, prioritized dict value will take remain
* if both values are lists, they will be combined according by appending the non-prioritized list to the other and then removing duplicates by casting to a list. *This means that list order can not be guaranteed* _It also means that any list will end the recursive nature of the merge_
* if both values are dicts, the keys will be combined recursively using these rules
* otherwise take the value from the prioritized dictionary

## Usage
```python
from prio_merge import prio_merge

prio_dict = {}
```
py-echo 1.0.2
stylize prints with colors, backgrounds, and styles

# py-echo

echo your code with colors, backgrounds, and styles

## Installation

```bash
pip install py-echo
```

## Usage

```python
from echo import echo

#Fully stylized
echo(
    "Hello World!",  # text
    "red",  # color
    "green",  # background
    "bold",  # style
    "this is my first ",  # unstylized string before
    " printed with py-echo!!"  # unstylized string after)
)


#only color
echo(
    "Hello World!",  # text
    "red",  # color
    "",  # background
    "",  # style
    "",  # unstylized string before
    ""  # unstylized string after)
)
```

```python
#Manual use
from echo import backgrounds, colors, styles, close

print(
    backgrounds['blue'] +
    colors['black'] +
    styles['underline'] +
    "Hello World!" +
    close)

```

## Avaliable Parameters

### Colors

`black`
`red`
`green`
`orange`
`blue`
`purple`
`cyan`
`lightgrey`
`darkgrey`
`lightred`
`lightgreen`
`yellow`
`lightblue`
`pink`
`lightcyan`

### Backgrounds

`black`
`red`
`green`
`orange`
`blue`
`purple`
`cyan`
`lightgrey`

### Styles

`bold`
`disable`
`underline`
`reverse`
`invisible`
annot 0.0.3
Annotate data analysis
Requires Python: >=3.6

]# annot

Annotate data analysis

## Command line usage

Start in a directory with some data:

  > ls
  faa-wildlife.csv

To create an annot project:

  > annot
  No .annot directory here. Want to create one? [y]/n: y
  Created .annot
  Created .annot/index.rst
  Created .annot/index.html
  Created .annot/DataTables/
  Created .annot/data
  Created .annot/temp

To open the annot in a web browser:

  > annot open

To add a datasets to the page:

  > annot add my.csv

To add comments to the page:

  > annot markdown '# Background'
  > annot markdown 'This csv has my data'
  -or-
  # edit .annot/index.rst in a text editor, then
  > annot render

To add content to the page from Jupyter:

  import annot
  page = annot.Page('path/to/.annot')
  page.add_dataframe(df)
  page.add_plot(matplotlib.pyplot.gca())
  page.add_markdown('# Results')
  page.add_html('<img src="http://abc.com/img.png">')

## Use from Visidata

To save visidata sheets directly to page:

  Using vdannot:

    Setup:
      PYTHONPATH=dir/with/annot.py
      export PYTHONPATH
      ~/.visidata/vdannot.py # exists
      ~/.visidatarc contains 'import vdannot'

    When you have a sheet to save:
      SPACE annot-csv ENTER my_freq_table ENTER

  Without using vdannot:

    Start this long-running process:
    > annot monitor

    In a different shell, open visidata. When you create a new sheet you
    want to save, such as after creating a frequency table, save the
    sheet as csv in the .annot/data directory
     - Ctrl-S
     - Path: .annot/data/my_freq_table.csv

To add a markdown comment:

  SPACE annot-markdown ENTER This is interesting data ENTER