Skip to content

clauspruefer/python-xml-microparser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python XML-Microparser Module

The Python xmlmicroparser module is a small OOP based XML Parser without DTD / XSLT / SAX functionality.

1. Documentation

Documentation including examples can be found at either ./doc or https://pythondocs.webcodex.de/xml-microparser.

2. Installation

# pip install xmlmicroparser

Or download the current Relase Zip / Tarball @ Release 1.0rc1 and continue with section 2.2.

Note

Since Python 3.3 (PEP 405) Virtual Environments are proposed.

2.1. Dependencies

You need Python3 setuptools to build the package manually. Pytest / PEP-8 packages are required to run tests.

# apt-get install python3-setuptools python3-pip python3-pytest python3-pytest-pep8

Important

The following section describes how to install the XML-Microparser package globally. Newer PIP Package Manager Versions prohibit this by default. It is possible to override by providing the --break-system-packages flag.

2.2. Non-Restrictive PIP Install

Do this for a pip system where --break-system-packages is not needed.

# sudo pip3 install ./xmlmicroparser-1.0rc1.tar.gz

2.3. Restrictive PIP Install

Do this for a pip system where --break-system-packages is needed.

# sudo pip3 install ./xmlmicroparser-1.0rc1.tar.gz --break-system-packages

3. Build Manually

Clone git repository and change dir.

# git clone https://github.com/clauspruefer/python-xml-microparser.git
# cd python-xml-microparser

3.1. Build As Non-Root-User

Build python-package with setup-tools (as non root user). This will generate the installabe tarball into ./dist/xmlmicroparser-1.0rc1.tar.gz.

# python3 setup.py sdist

3.2. Install As Root-User

# sudo pip3 install ./dist/xmlmicroparser-1.0rc1.tar.gz --break-system-packages

4. Run Tests / Pytest

# pytest

5. Example Usage / Boost::Python

Using the XML-Microparser Module with Boost Python C++ https://www.boost.org/doc/libs/1_86_0/libs/python/doc/html/index.html makes XML configuration handling in C++ projects easy.

See @ https://github.com/WEBcodeX1/http-1.2.