skillfed

ciscoconfparse

Parse, Audit, Query, Build, and Modify Cisco IOS-style and JunOS-style configs

ciscoconfparse v1.9.52 444.7K downloads/30d#6,619 on PyPI843
Copyleft license GPL-3.0-only Abandoned released

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 ciscoconfparse

uv

uv add ciscoconfparse

poetry

poetry add ciscoconfparse

Installing 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

Development Status :: 5 - Production/StableEnvironment :: PluginsIntended Audience :: DevelopersIntended Audience :: Information TechnologyIntended Audience :: System AdministratorsIntended Audience :: Telecommunications IndustryLicense :: OSI Approved :: GNU General Public License (GPL)License :: OSI Approved :: GNU General Public License v3 (GPLv3)Natural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: CommunicationsTopic :: InternetTopic :: System :: NetworkingTopic :: System :: Networking :: Monitoring

Tags

cisco ios config parsernetwork device configuration auditparse ios configuration filescisco interface query toolnetwork config analysisios configuration parsercisco config modification
network-config-parsingcisco-iosend-of-life

More Internet packages