ciscoconfparse
Parse, Audit, Query, Build, and Modify Cisco IOS-style and JunOS-style configs
What it is and what it does
ciscoconfparse is a Python library for parsing and querying Cisco IOS-style network device configurations. It reads a configuration file, breaks it into linked parent-child line relationships (e.g., an interface line as parent, shutdown as child), and lets you search and extract information using regex and object methods. You can audit existing configurations for missing or incorrect settings, modify them programmatically, or build new ones from scratch.
The library is now end-of-life as of December 2023. The maintainer released a successor as a separate PyPI project with broader vendor support, deeper configuration hierarchy, and a revised API. While this version remains functional and has no known vulnerabilities, new projects should use the successor instead, and existing code should be tested carefully before attempting migration.
Use it for:
- Audit Cisco router or switch configurations to find shutdown interfaces or missing critical commands.
- Extract IP addresses and netmask information from interface configurations programmatically.
- Query HSRP group settings and interface tracking across a device config.
- Modify existing Cisco IOS configurations by finding and updating specific parent-child line pairs.
- Build compliance checks that verify configuration standards are met across a fleet of devices.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Parses and queries Cisco IOS-style network device configurations, extracting parent-child relationships to answer questions about interfaces, addresses, and configuration state.
No, unless you are maintaining legacy code that already depends on this version. The project is archived and abandoned; the maintainer explicitly recommends upgrading to the successor project. If you are starting a new project, use the successor instead. If you must use this version, be aware it will receive no further updates or security patches.
Install
ciscoconfparse on PyPI
pip
pip install ciscoconfparseuv
uv add ciscoconfparsepoetry
poetry add ciscoconfparseInstalling ciscoconfparse
Before you install
Low friction installation with a pure-Python wheel, but the project is archived and abandoned as of December 2023. The maintainer recommends migration; this version receives no updates.
License in practice
GPL-3.0-only copyleft license requires any derivative work or distribution to also be GPL-3.0 compatible. Acceptable for internal tools and open-source projects, but incompatible with proprietary software that cannot adopt the same license.
Quickstart
from ciscoconfparse import CiscoConfParse
parse = CiscoConfParse('exampleswitch.conf', syntax='ios')
for intf_obj in parse.find_parent_objects('^interface', '^\\s+shutdown'):
print("Shutdown: " + intf_obj.text)
Verify before relying
- Whether the six runtime dependencies (deprecated, dnspython, hier_config, loguru, passlib, toml) are all actively maintained.
- Specific Python 3.13 compatibility status beyond the classifier claim.
- Whether existing scripts will run without modification if migrated to the successor project.
Package facts
| License | GPL-3.0-only (copyleft) |
| Python support | supports the current Python release (<4.0.0,>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — deprecated, dnspython, hier_config, loguru, passlib, toml |
| Maintenance | abandoned — 630 days since the last release |
| Last repo commit | (repository archived) |
| First released | |
| Downloads | 444,735/month — #6,619 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: ciscoconfparse-1.9.52-py3-none-any.whl
Keywords: Parse, audit, query, modify, Cisco IOS, Cisco, NXOS, ASA, Juniper
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
netaddrRepresents and manipulates IPv4, IPv6, MAC…
permissive · top 5,000 on PyPI
IPyIPy provides Python classes for parsing,…
permissive · top 5,000 on PyPI
ipaddrProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
cidr-trieStores and queries CIDR IP address blocks (IPv4…
permissive · top 15,000 on PyPI
isc-dhcp-leasesReads and parses ISC DHCP server lease files…
permissive · top 15,000 on PyPI
ipwhoisRetrieves and parses whois and RDAP data for…
permissive · top 15,000 on PyPI
ipsw-parserParses and extracts data from iOS IPSW firmware…
copyleft · top 15,000 on PyPI
iptoolsProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
ciscoisesdkA Python SDK for interacting with Cisco…
permissive · top 15,000 on PyPI
ttp_templatesProvides a curated collection of TTP (Template…
permissive · top 15,000 on PyPI