Library for Huawei, Nokia network device API interactions
Project description
PyNetCom
pynetcom is a library designed for connecting to network switches and routers from various vendors via REST API and CLI, as well as for interacting with management systems such as Huawei NCE and Nokia NSP. The library allows you to execute commands, retrieve inventory data, and obtain alarm lists.
Features
- Connect to network devices using REST API and CLI.
- Interact with management systems (e.g., Huawei NCE, Nokia NSP).
- Retrieve inventory data.
- Obtain alarm lists.
- Convenient token management for authorization.
- Automatic token refresh upon expiration.
Installation
You can install the package using pip:
pip install pynetcom
Development
To set up the development environment:
# Install development dependencies
pip install setuptools wheel twine
# Install the package locally
pip install .
# Create wheel and source
pip install build twine
python -m build
Running Examples
To run examples, follow these steps:
-
Clone the repository:
git clone <repository_url> cd pynetcom
-
Set up a virtual environment:
python -m venv .venv
-
Activate the virtual environment:
-
On Windows:
.venv\Scripts\activate
-
On macOS/Linux:
source .venv/bin/activate
-
-
Add your configuration data to config.py:
cp examples/config.example.py examples/config.py vi examples/config.py
API_NCE_USER = "your_nce_api_user" API_NCE_PASS = "your_nce_password" API_NCE_HOST = "https://your_nce_hostip:26335"
-
Run an example script:
python examples/huawei_nce.py
Usage
Here is an example of how to use the library:
from pynetcom import RestNCE
# Initialize connection to NCE
nce = RestNCE(API_NCE_HOST, API_NCE_USER, API_NCE_PASS)
# Get subnets from NCE
nce.send_request("/restconf/v2/data/huawei-nce-resource-inventory:subnets")
items = nce.get_data()
print(items)
License
This project is licensed under the MIT License - see the LICENSE file for details.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pynetcom-0.1.1.tar.gz.
File metadata
- Download URL: pynetcom-0.1.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9bc7d1a25f5cd52666d1e59af03af73501c379b3af770d39ec1f1485d30eaa7
|
|
| MD5 |
77e20ed4e8028b228aa00e5afe867e00
|
|
| BLAKE2b-256 |
15fff43283eaf9c5939b9341215c629e2682a6ca47f4bfe837c43882e44d638d
|
File details
Details for the file pynetcom-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pynetcom-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e95097ccb5dd0ab806d952b00b821b565437799862ccc86999824f031fd6463f
|
|
| MD5 |
54862cf2a0dab3c4b41eb09821eeef64
|
|
| BLAKE2b-256 |
a8005da8dda8be18551d1579d45e9e38322ca07ce18a75f4e43195c3aed22b66
|