MIT License

项目介绍

CiscoDevNet/python_code_samples_network 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 MIT License 许可证,目前获得 739 个 Star、474 次 Fork。

仓库全名
CiscoDevNet/python_code_samples_network
开源许可证
MIT License
Star 数
739
Fork 数
474
未关闭 Issue
2

README 摘要

Network Automation with Python Code Samples A collection of Python Code Samples for Network Management. Includes samples that leverage on-box libraries, as well as samples that use exposed external APIs (NETCONF/RESTCONF, SNMP, SSH, REST, etc). Some examples make use of available SDKs. On-Box Examples Many Cisco switches and routers provide an on-box Python Interpreter that can be leveraged to execute scripts and…

完整内容见 GitHub 原始 README 或本页 。

常见问题

python_code_samples_network 用什么语言开发?

主要使用 Python 编写,采用 MIT License 许可证,目前有 739 个 Star。

python_code_samples_network 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 python_code_samples_network 的源码?

可以直接克隆仓库:git clone https://github.com/CiscoDevNet/python_code_samples_network.git,默认分支为 master;安装与运行步骤见仓库 README。

python_code_samples_network 最近还在维护吗?

仓库最近一次更新为 2025年9月8日,当前有 2 个未关闭 Issue;Star 数为 739,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

A collection of Python Code Samples for Network Management. Includes samples to run on-box and off-box.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

简要分析

热度分
1828
价值分
599
活跃状态
活跃

语言占比

Python

README

Network Automation with Python Code Samples

A collection of Python Code Samples for Network Management. Includes samples that leverage on-box libraries, as well as samples that use exposed external APIs (NETCONF/RESTCONF, SNMP, SSH, REST, etc). Some examples make use of available SDKs.

On-Box Examples

Many Cisco switches and routers provide an on-box Python Interpreter that can be leveraged to execute scripts and programs directly on end devices. In addition to the interpreter, Python libraries are included that provide direct access to the underlying devices operations to execute CLI commands, or monitor for events.

Sample Code

Code Sample Description
Execute CLI via Python This example is about as simple as it gets. By leveraging the CLI library, we execute the “show version” command on the box.
TDR Test Every Interface This example once again leverages the CLI library, but to do something a bit more interesting. A TDR test is run on every interface in “up” status.
EEM Config Changes to Spark In this example, the EEM library is used to monitor for configuration changes. When one occurs a message is sent to a Cisco Spark Room.
Python with Eventing Example Use the EEM and Python together to script based on local events.
EEM + Python + Spark ChatOps Use the EEM to monitor for config changes and send a Spark Message
EEM + Python + Email alert This example leverages the CLI library and using the EEM feature to monitor for interface flapping and send an email alert

Off-Box Examples

Here are few Python scripts that can interact with network elements using one of the many exposed interfaces (NETCONF, RESTCONF, SNMP, SSH, etc). Many of these scripts could also be run on-box, however they don’t leverage any of the unique libraries available on device.

Code Sample Description
Netmiko and CLI Example for Interface Management These are a series of python scripts for retrieving, creating, deleting a Loopback Interface with Python.
MIB Walk with Python In this example, we perform a MIB walk against a device leveraging the “netsnmp” library for Python.
NETCONF Connection with Python This example shows the basics of connecting to a device with NETCONF using the “ncclient” library for Python.
Configure Interface IP Address with RESTCONF In this example the newly ratified RESTCONF standard is used to configure the IP Address on an interface.
Get Inventory from APIC-EM APIC-EM maintains an inventory database of the entire network. In this example Python is used to retrieve that information using the REST API.
Get Host List from APIC-EM APIC-EM maintains a list of all clients connected to the network devices discovered by APIC-EM. This example queries the APIC-EM for the list, and display’s it in a simple table.
Retrieve Tenants from ACI APIC This example leverages the ACI Toolkit to connect to an APIC controller and retrieve the list of Tenants configured.
Basic NETCONF Get A basic ncclient example to <get> NETCONF Data
Basic NETCONF Edit A basic ncclient example to <edit-config> NETCONF Data
NETCONF XPATH Example Use the XPATH feature when making a NETCONF Requests
Model Based AAA These example scripts are for Model Based AAA to get, edit and delete the rule-lists for privilege level users and Groups by using ietf-netconf-acm.yang data model
RESTCONF These example scripts are for RESTCONF to retrieve and configure the switch using different operations such as Get, Delete, Put, Post and Patch.

评论

暂无评论