semvec/pypi-packages huggingface dataset:
tp-link-controller 0.0.2
A Python Package to controll TP-Link Routers
Requires Python: >=3.6

# TP-link WiFi Router Controller
# Installation
```pip
pip install tp-link-controller
```

# Usage
1. Install [JDK-8](https://www.oracle.com/in/java/technologies/javase/javase-jdk8-downloads.html)
    - Using Chocolatey: `choco install jdk8`
2. Download [browsermob-proxy](https://github.com/lightbody/browsermob-proxy/releases/tag/browsermob-proxy-2.1.4) pass the binary path to `TP_Link_controller` object.

```PYTHON
from TPLinkController import controller

email = "xyz@examplemail.com"
password = "topSecret"

bmp_path = r"bin\browsermob-proxy-2.1.4\bin\browsermob-proxy"

tplink = controller.TP_Link_Controller(email, password, browsermobproxy_location=bmp_path, DEBUG_MODE=True)
```
By default chrome runs in headless mode (NO UI WILL OPEN)
If `DEBUG_MODE` is `True` or `headless` option is `True`, it will open chrome.

## Note: Login before doing anything
```PYTHON
tplink.login()
```

## The following methods are available
1. .login() -> Logins to the admin panel
2. .close() -> Exits the browser and closes the proxy
3. .get_status() -> Returns a dictionary with a lot of status information.
4. .turn_on_2G() -> Turns on 2.4G WiFi.
5. .turn_on_5G() -> Turns on 5G WiFi.
6. .turn_off_2G() -> Turns off 2.4G WiFi.
7. .turn_off_5G() -> Turns off 5G WiFi.
8. .toggle_2g_wifi() -> Toggles 2.4G WiFi
9. .toggle_5g_wifi() -> Toggles 5G WiFi
10. .is_2g_on() -> Returns `True` if 2.4G WiFi is `on` else `False`.
10. .is_5g_on() -> Returns `True` if 5G WiFi is `on` else `False`.


- Based on Selenium.
- Uses the WebUI as you would normally do.
- Made due to the lack of any kind of __API__ to interact with any TP-Link Routers.

## Tested On:
1. - Hardware: __Archer C1200 v2.0__
   - Firmware Version: __2.0.2 Build 20180118 rel.38979 (EU)__

## To get started with package dev:
1. Clone the repository.
2. Create a virtual environment.
3. Install all the packages from [requirements.txt](./requirements.txt)
4. Install [JDK-8](https://www.oracle.com/in/java/technologies/javase/javase-jdk8-downloads.html)
    - Using Chocolatey
    ```CHOCO
    choco install jdk8
    ```
5. Download [Browsermob-proxy](https://github.com/lightbody/browsermob-proxy/releases/tag/browsermob-proxy-2.1.4).
    - For windows, leave it as default, should work out of the box.
    - Pass it to the instance in code.
    - ```PYTHON
      tplink = TP_Link_Controller(email, password, browsermobproxy_location=r"bin\browsermob-proxy-2.1.4\bin\browsermob-proxy", DEBUG_MODE=True)
      ```
4. Download the [__Chrome webdriver__](https://chromedriver.chromium.org/downloads) and place it in [`./bin/`](./bin/) folder for windows.
5. For __Raspberry Pi__ install .deb packages from [here](https://launchpad.net/~canonical-chromium-builds/+archive/ubuntu/stage/+build/14482955). No need to set bin path, packages will be installed in right directory.
acdh-uri-norm-rules 2.0.0
A set of URI normalization rules used by the ACDH

# UriNormRules

[![PyPI version](https://badge.fury.io/py/acdh-uri-norm-rules.svg)](https://badge.fury.io/py/acdh-uri-norm-rules)
[![Latest Stable Version](https://poser.pugx.org/acdh-oeaw/uri-norm-rules/v/stable)](https://packagist.org/packages/acdh-oeaw/uri-norm-rules)
[![License](https://poser.pugx.org/acdh-oeaw/uri-norm-rules/license)](https://packagist.org/packages/acdh-oeaw/uri-norm-rules)

Set of URI normalization rules used within the [ACDH-CD](https://www.oeaw.ac.at/acdh/).

Provides Python 3 and PHP bindings.

Rules are stored as a JSON in the `UriNormRules/rules.json` file.

# Installation & usage

## Python

* Install using pip3:
  ```bash
  pip3 install acdh_uri-norm-rules
  ```
* Use with
  ```Python
  from AcdhUriNormRules import get_rules, get_normalized_uri
  print(AcdhUriNormRules.get_rules())

  wrong_id = "http://sws.geonames.org/1232324343/linz.html"

  good_id = get_normalized_uri(wrong_id)
  print(good_id)
  # "https://www.geonames.org/1232324343"
  ```

## PHP

* Install using using [composer](https://getcomposer.org/doc/00-intro.md):
  ```bash
  composer require acdh-oeaw/uri-norm-rules
  ```
* Usage with
  ```php
  require_once 'vendor/autoload.php';
  print_r(acdhOeaw\UriNormRules::getRules());
  ```
reactivenet-gianlu33 0.1.1
Networking library for reactive-tools
Requires Python: >=3.6

# reactive-net
Python library for managing network communications

Network messages are of three types:

- `Message`
  - Format: `<size u16><payload>`
  - This is not used in practice
- `CommandMessage`
  - Format: `<code u16><size u16><payload>`
- `ResultMessage`
  - Format: `<code u8><size u16><payload>`



## Command Messages

```python
class ReactiveCommand(IntEnum):
    Connect             = 0x0
    Call                = 0x1
    RemoteOutput        = 0x2
    Load                = 0x3
    Ping                = 0x4
    RegisterEntrypoint  = 0x5
    Output              = 0x6 # called by software modules in SGX and Native
    RemoteRequest       = 0x7
```

- Not all the commands have a response! (ResultMessage)
  - `RemoteOutput` and `Output` does not have response.

## Result Messages

```python
class ReactiveResult(IntEnum):
    Ok                  = 0x0
    IllegalCommand      = 0x1
    IllegalPayload      = 0x2
    InternalError       = 0x3
    BadRequest          = 0x4
    CryptoError         = 0x5
    GenericError        = 0x6
```
pynso-restconf 2.1.2
A Python client library for Cisco NSO (previously tail-f).
Requires Python: >=3.6

==============
PyNSO-Restconf
==============
|Build| |PyPI1| |PyPI2| |PyPI3| |Downloads|

A Python client library for Cisco NSO (previously tail-f)

------------
Installation
------------

To install use pip:

::

    $ pip install pynso-restconf

Or clone the repo:

::

    $ git clone https://github.com/workfloworchestrator/pynso-restconf.git
    $ pip install flit
    $ flit install --deps develop --symlink

-----
Usage
-----

.. code:: python

    from pprint import pprint

    from pynso import NSOClient

    # Setup a client
    client = NSOClient('10.123.92.12', 'admin', 'admin')

    # Get information about the API
    print('Getting API version number')
    pprint(client.info())

    # Get the information about the running datastore
    print('Getting information about the running datastore')
    pprint(client.get_datastore("running"))

.. |Build| image:: https://github.com/workfloworchestrator/pynso-restconf/workflows/Python%20package/badge.svg
    :target: https://github.com/workfloworchestrator/pynso-restconf
.. |PyPI1| image:: https://img.shields.io/pypi/v/pynso-restconf.svg?maxAge=2592000
    :target: https://pypi.python.org/pypi/pynso-restconf
.. |PyPI2| image:: https://img.shields.io/pypi/l/pynso-restconf.svg?maxAge=2592000
    :target: https://pypi.python.org/pypi/pynso-restconf
.. |PyPI3| image:: https://img.shields.io/pypi/pyversions/pynso-restconf.svg?maxAge=2592000
    :target: https://pypi.python.org/pypi/pynso-restconf
.. |Downloads| image:: https://static.pepy.tech/personalized-badge/pynso-restconf?period=total&units=international_system&left_color=black&right_color=orange&left_text=Downloads
    :target: https://pepy.tech/project/pynso-restconf