Socket
Socket
Sign inDemoInstall

xmlightning

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

xmlightning

Allows you to create a simple and advanced xml parser


Maintainers
1

xmlightning

xmlightning is a simple, Flask-like way of creating XML parsers

Installation

  • To install xmlightning through pip

      pip install xmlightning
    

Getting Started

For a basic hello world, take the following two files

  • hello_world.xml

      <root>
          <foo>Hello World</foo>
      </root>
    
  • hello_world.py

     from xmlightning import Lightning
    
    
     parser = Lightning()
    
     @parser.route("./foo")
     def hello_world(element):
         print("hello_world")
    
     parser.parse("test.xml")
    

Breakdown

After the Lightning class gets imported in your project, to use it you must instantiate it.

After the Lightning class was instantiated, the example uses the decorator, "route".

Route Decorator

The route decorator takes in one argument, path, which is a string. Path refers to any valid XPATH string.

Note that the route decorator requires the function it is used on to take in one argument: element.

The type of element can be imported through the following

  • Through xml

      from xml.etree.ElementTree import Element
    
  • Or through xmlightning

      from xmlightning import Element
    

Next, the hello_world.xml file is parsed. Whenever the parser encounters a path that matches a route, the function of that route is executed.

Finally, the string from the function is printed to the screen

    hello_world

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc