Skip to main content

High-performance Cython XML parser for Python — pugixml with a Pythonic API

Project description

pygixml

Python Version PyPI version License: MIT Build Status Documentation Status GitHub Stars

A high-performance XML parser for Python based on Cython and pugixml. Fast parsing, full XPath 1.0 support, and a clean Pythonic API for reading, writing, and transforming XML.

📚 View Full Documentation


Why pygixml?

Speed, memory, and size. pygixml brings pugixml's battle-tested C++ parser directly to Python — with numbers that speak for themselves.

Parsing Performance (5 000 elements)

Library Parsing Time Speedup vs ElementTree
pygixml 0.0009 s 8.6× faster
lxml 0.0041 s 1.9× faster
ElementTree 0.0076 s 1.0× (baseline)

Memory Usage (5 000 elements, peak)

Library Peak Memory vs ElementTree
pygixml 0.67 MB 7.2× less
lxml 0.67 MB 7.2× less
ElementTree 4.84 MB 1.0×

Package Size

Library Installed Size vs lxml
pygixml 0.43 MB 12.7× smaller
lxml 5.48 MB 1.0×

All numbers from benchmarks/full_benchmark.py. See the Performance page for the full comparison across 6 XML sizes.

Features

  • Blazing-fast parsing — up to 14× faster than ElementTree
  • Low memory — 7× less than ElementTree, on par with lxml
  • Tiny footprint — 0.43 MB installed (12.7× smaller than lxml)
  • Full XPath 1.0 — complete query engine with all standard functions
  • Pythonic API — intuitive properties and methods, not a direct C++ mirror
  • Cross-platform — Windows, Linux, macOS
  • Text extraction — recursive text gathering with configurable joins
  • XML serialization — output with custom indentation
  • Node iteration — depth-first traversal of the entire document

Installation

# From PyPI
pip install pygixml

# Or from GitHub
pip install git+https://github.com/MohammadRaziei/pygixml.git

Quick Start

import pygixml

# Parse XML from string
xml = """
<library>
    <book id="1" category="fiction">
        <title>The Great Gatsby</title>
        <author>F. Scott Fitzgerald</author>
        <year>1925</year>
    </book>
    <book id="2" category="fiction">
        <title>1984</title>
        <author>George Orwell</author>
        <year>1949</year>
    </book>
</library>
"""

doc = pygixml.parse_string(xml)
root = doc.root                           # <library>

# Access children and attributes
book = root.child("book")
print(book.name)                          # book
print(book.attribute("id").value)         # 1
print(book.child("title").text())         # The Great Gatsby

# XPath queries
fiction = root.select_nodes("book[@category='fiction']")
print(f"Found {len(fiction)} fiction books")

# Create & save
doc = pygixml.XMLDocument()
root = doc.append_child("catalog")
root.append_child("item").set_value("Hello")
doc.save_file("output.xml")

Properties vs Methods

A quick reference so you don't get tripped up:

Properties (no ()) Methods (need ())
node.name, node.value, node.type node.child(name)
node.parent, node.next_sibling node.first_child()
node.xml, node.xpath node.append_child(name)
attr.name, attr.value node.set_value(v)
doc.root node.select_nodes(query)
node.first_attribute()
node.text()

Advanced Features

Text Content Extraction

import pygixml

xml = """
<root>
    <simple>Hello World</simple>
    <nested>
        <child>Child Text</child>
        More text
    </nested>
    <mixed>Text <b>with</b> mixed <i>content</i></mixed>
</root>
"""

doc = pygixml.parse_string(xml)
root = doc.root

# Direct text content of a child element
print(root.child("simple").text())                # Hello World

# Recursive text content (all descendant text joined)
nested = root.child("nested")
print(nested.text())                              # Child Text\nMore text
print(nested.text(join=" | "))                    # Child Text | More text

# Direct text only (non-recursive — immediate text children)
mixed = root.child("mixed")
print(mixed.text(recursive=False))                # Text

XML Serialization

import pygixml

doc = pygixml.XMLDocument()
root = doc.append_child("root")
root.append_child("item").set_value("content")

# Convenience property
print(root.xml)
# <root>
#   <item>content</item>
# </root>

# Custom indentation
print(root.to_string("    "))

Document Iteration

import pygixml

doc = pygixml.parse_string("<root><a/><b/></root>")

# Depth-first traversal of every node
for node in doc:
    print(f"{node.type:12s} {node.name}")
# document
# element       root
# element       a
# element       b

Node Identity

import pygixml

doc = pygixml.parse_string("<root><a/><b/></root>")
root = doc.root

a = root.child("a")
a2 = root.child("a")
print(a == a2)          # True — same underlying node
print(a.mem_id)         # Memory address for debugging

Modifying XML

import pygixml

doc = pygixml.parse_string("<person><name>John</name></person>")
root = doc.root

# Change text content
root.child("name").set_value("Jane")

# Rename an element
root.child("name").name = "full_name"

# Add children
root.append_child("age").set_value("30")

print(root.xml)
# <person>
#   <full_name>Jane</full_name>
#   <age>30</age>
# </person>

XPath Support

Full XPath 1.0 via pugixml's engine:

import pygixml

xml = """
<library>
    <book id="1" category="fiction">
        <title>The Great Gatsby</title>
        <author>F. Scott Fitzgerald</author>
        <year>1925</year>
        <price>12.99</price>
    </book>
    <book id="2" category="fiction">
        <title>1984</title>
        <author>George Orwell</author>
        <year>1949</year>
        <price>10.99</price>
    </book>
</library>
"""

doc = pygixml.parse_string(xml)
root = doc.root

# Select nodes
books = root.select_nodes("book")
print(f"Found {len(books)} books")

# Predicates
fiction = root.select_nodes("book[@category='fiction']")
print(f"Found {len(fiction)} fiction books")

# Single node
book = root.select_node("book[@id='2']")
if book:
    print(book.node.child("title").text())    # 1984

# Pre-compiled XPathQuery for repeated use
query = pygixml.XPathQuery("book[year > 1930]")
recent = query.evaluate_node_set(root)
print(f"Found {len(recent)} books published after 1930")

# Scalar evaluations
avg = pygixml.XPathQuery("sum(book/price) div count(book)").evaluate_number(root)
print(f"Average price: ${avg:.2f}")           # Average price: $11.99

has_orwell = pygixml.XPathQuery("book[author='George Orwell']").evaluate_boolean(root)
print(f"Has Orwell books: {has_orwell}")       # Has Orwell books: True

Supported XPath

Category Examples
Node selection //book, /library/book, book[1]
Attributes book[@id], book[@category='fiction']
Boolean ops and, or, not()
Comparisons =, !=, <, >, <=, >=
Math +, -, *, div, mod
Functions position(), last(), count(), sum(), string(), number()
Axes child::, attribute::, descendant::, ancestor::
Wildcards *, @*, node()

Core API

Class Purpose
XMLDocument Document-level operations: load, save, append-child
XMLNode Navigate, read, and modify individual nodes
XMLAttribute Attribute name and value access
XPathQuery Pre-compiled XPath queries for repeated evaluation
XPathNode Single XPath result (wraps a node or attribute)
XPathNodeSet Collection of XPath results

Module-level functions: parse_string(xml), parse_file(path).


Important: Element Nodes vs Text Nodes

In pugixml (and therefore pygixml), element nodes do not store text as a value. They contain child text nodes instead.

# ❌  Setting value on an element node does nothing useful:
element.value = "some text"

# ✅  To SET text, append a text node (empty name) and set its value:
text_node = element.append_child("")
text_node.value = "some text"

# ✅  To GET text, use .text():
print(element.text())                     # "some text"

# ✅  Or read the text node directly:
print(element.first_child().value)        # "some text"

For most use-cases, element.text() is all you need.


Benchmarks

Run the full benchmark suite on your machine:

# Full suite: parsing (6 sizes), memory (3 sizes), package size
python benchmarks/full_benchmark.py

# Legacy parsing-only benchmark
python benchmarks/benchmark_parsing.py

Compares pygixml against lxml and xml.etree.ElementTree. Results are printed as tables and saved to benchmarks/results/benchmark_full.json.


Documentation

📖 Full docs: https://mohammadraziei.github.io/pygixml/

  • Complete API reference
  • Installation guides for all platforms
  • Performance benchmarks and optimization tips
  • XPath 1.0 usage guide with examples
  • Real-world usage scenarios

License

MIT License — see LICENSE.

Enjoy pygixml? Star the repository to support the development: 👉 Star pygixml on GitHub


Acknowledgments

  • pugixml — Fast and lightweight C++ XML library
  • Cython — C extensions for Python
  • scikit-build — Modern Python build system

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygixml-0.9.2.tar.gz (662.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pygixml-0.9.2-cp314-cp314t-win_amd64.whl (151.9 kB view details)

Uploaded CPython 3.14tWindows x86-64

pygixml-0.9.2-cp314-cp314t-win32.whl (127.4 kB view details)

Uploaded CPython 3.14tWindows x86

pygixml-0.9.2-cp314-cp314t-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (159.7 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp314-cp314t-macosx_10_15_universal2.whl (263.3 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp314-cp314-win_amd64.whl (140.5 kB view details)

Uploaded CPython 3.14Windows x86-64

pygixml-0.9.2-cp314-cp314-win32.whl (119.8 kB view details)

Uploaded CPython 3.14Windows x86

pygixml-0.9.2-cp314-cp314-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (162.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp314-cp314-macosx_10_15_universal2.whl (258.5 kB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp313-cp313-win_amd64.whl (136.2 kB view details)

Uploaded CPython 3.13Windows x86-64

pygixml-0.9.2-cp313-cp313-win32.whl (116.3 kB view details)

Uploaded CPython 3.13Windows x86

pygixml-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (161.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp313-cp313-macosx_10_13_universal2.whl (257.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp312-cp312-win_amd64.whl (136.7 kB view details)

Uploaded CPython 3.12Windows x86-64

pygixml-0.9.2-cp312-cp312-win32.whl (116.5 kB view details)

Uploaded CPython 3.12Windows x86

pygixml-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (161.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp312-cp312-macosx_10_13_universal2.whl (258.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp311-cp311-win_amd64.whl (140.0 kB view details)

Uploaded CPython 3.11Windows x86-64

pygixml-0.9.2-cp311-cp311-win32.whl (116.1 kB view details)

Uploaded CPython 3.11Windows x86

pygixml-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (162.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp311-cp311-macosx_10_9_universal2.whl (257.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp310-cp310-win_amd64.whl (140.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pygixml-0.9.2-cp310-cp310-win32.whl (116.1 kB view details)

Uploaded CPython 3.10Windows x86

pygixml-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (161.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp310-cp310-macosx_10_9_universal2.whl (258.2 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

pygixml-0.9.2-cp39-cp39-win_amd64.whl (140.5 kB view details)

Uploaded CPython 3.9Windows x86-64

pygixml-0.9.2-cp39-cp39-win32.whl (116.5 kB view details)

Uploaded CPython 3.9Windows x86

pygixml-0.9.2-cp39-cp39-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

pygixml-0.9.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (162.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.9.2-cp39-cp39-macosx_10_9_universal2.whl (259.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pygixml-0.9.2.tar.gz.

File metadata

  • Download URL: pygixml-0.9.2.tar.gz
  • Upload date:
  • Size: 662.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2.tar.gz
Algorithm Hash digest
SHA256 c4a3078ac17073f60f7f0cf8d10a54f4e669ad6393bf4190514643f4ea908e6c
MD5 09f2959903ff383097f09684c9c2553b
BLAKE2b-256 441218869ce1f51d904614b57d2782da3e5d7dc9de888ebd7712d9bc6a192309

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 151.9 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 8b370d881af680a497d24f87a8c133fe095eb7820e7a77b5411a6a2ebd5a5530
MD5 e10f08351db0f7a93f01d09966b4e034
BLAKE2b-256 b8c0f4dd73d87755664830c9f5268c45cfb269613adac35a2419d0015d6573de

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314t-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 127.4 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 c30d3abdc131a2befa66a4efda77b734c747611d443de3712e4e7530ee53c383
MD5 2e3909aaa7e26c720906404237659ad8
BLAKE2b-256 8c7e882f89e4d7ccccdb1bbb6b466b45c6f22ce1373537bcb19ace09f10ce449

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a92fca6cb6492865c32a173c031e9fca5cc8ea4ddd4acd6440bdedc306791788
MD5 93fbf461150bd5c6e1843c4278b2f3d8
BLAKE2b-256 bbbce1198578e4c106a5df554315f349e29fc10132765a11e5a0422f83c39aec

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8b7ca5b3e6fecab7598f4692ab034e51de9d260af7bb88071a85de2719c1df50
MD5 2298c56507dd7355ca1dabf8e430d600
BLAKE2b-256 4b7c02fb46a08b111f7e56dc0bec57080d6c236e196d321cbec9ead289044573

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314t-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314t-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 150b65fcd7f5f49b788d906447a4c1776859727eafb424862730e87b7d9f6a05
MD5 57b9a4ede125f379f5941c0ecc7882ea
BLAKE2b-256 a551effc268514578442419cb1c7fbab8db9acf9fa7048a281d16f0875b86789

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 140.5 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 5f641a504ee0237d91799df333766e39f97ee3983576e88236dc21e5aaf924e2
MD5 b4f46a927023e6f24176f3b9dabcc1d2
BLAKE2b-256 05b267ae1a2116e0b72471472b4bec7a02ac70d9032c7ab624197028ff5475a2

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp314-cp314-win32.whl
  • Upload date:
  • Size: 119.8 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 d2691d2b485aca9474a903b27c9da4e48ce4e0ea5d73003bfc3759787e739155
MD5 84556e532df1793205b2d55a61310dae
BLAKE2b-256 7e66082396c6e561ca1683f587892d30d5737d45d508b8303998b4b32f20f41b

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a98cd199cabfe5389c767fc621cc0c404d5f802c65c15a2147df536ecf2b8b5e
MD5 8461142f3697d380887a13fe2add473e
BLAKE2b-256 acd7c2bcd1337975e92eed9a80cba6c0d9ab20e43507e0c7954d87439b32758f

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ad98b5cb953ba5a4b9d88771d82b90ed20ded49e628ae4b4d51495b5f092feb4
MD5 be9457401ae08335b7211d87383a47b4
BLAKE2b-256 2c86cb473c6b6ac1e85935903cd689ab9d8e41a6dec417566678e6ba2c5156c1

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 ff57ab7b66cb09ca5b0df0ef220791c2c7c97e768e6e8a19246028861f47e861
MD5 13f2302023debcbeff9f96e44fd06ce2
BLAKE2b-256 58ee9ac97098d93ccf39768e7a2579e5f9c0ac20afbf36ca574773e40850cdc0

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 136.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 051385ccb5e4a6dc821f863946fe6d8731bbd042aaee5f7a4012eb6ed1812f54
MD5 8b3d4fb2618c53d0e2a639e1fee89a21
BLAKE2b-256 fe6995ee0b473661783b4c7ce1eeced65925f1a6bd86615c9dc50593c685269f

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp313-cp313-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp313-cp313-win32.whl
  • Upload date:
  • Size: 116.3 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 027d065110c234b3ca8da95c0c1617e02c6b1390e2f2b80cfc70b07f279f529d
MD5 1cc9ee50870a3e8d596d2bc9eb47d427
BLAKE2b-256 38795fb084d078e6e23bfb826c28e5546d17866622cf1be75e92aa94f2b8c15b

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b2ceb72a7707765e8640ec6d526b4d969dca2957e0c9e1e0baa431e61cb6646c
MD5 b6dbe43701619b7932f9ebd3fc9d9449
BLAKE2b-256 a03acd9961920abdb061faf7f66ec6c6fa449b3695f46302b464ed5f02010560

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6210391e9edbd54bd840b3a9a55c486a78db849c07bbde7578b387aca63bf650
MD5 beb249b128e57d87ab57170029d0e9ee
BLAKE2b-256 487d5a538a6f57655bc9514330898efa59180008c7faf2e0317adc365a839d5d

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 9466d0b35b30ddf3dd94b17b7eb3ea3d8dd76c7c74cdaee085b429fbd3b575ab
MD5 29def0425713a6f1b28b7c3a2cbb0e47
BLAKE2b-256 b6be999bdcda9816add0cfb9df874168c6872a0a52b425a627abd2c6c5cc8903

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 136.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f19e13aaf50560f5b38caef2f016fe664cd5bc82ba7fcfd905edf6f827735ac7
MD5 007011269fd4f17d3b5e7780496e03d5
BLAKE2b-256 ac64bb94ea64d7e9a173fae430557770967592c0da97ef755403eba656549094

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp312-cp312-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp312-cp312-win32.whl
  • Upload date:
  • Size: 116.5 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d5b06742b82e224570931977794e24babe4491fb5cb5606089a2284b896099e6
MD5 5de651c14522277c79298c1fe3016c9a
BLAKE2b-256 7c71b865dfc83eceb6c34f61a1d93758efda5ff3db146fb9108462e5da420412

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6e46e5d72b396afe3831e84d89a52c008b9657e2d1bf77905b534efd414cd29f
MD5 3e716b75a099db49159df459292fc157
BLAKE2b-256 de8c187f90c244a73e42d259a536b8215d8af4bef565722f85d794d791539337

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c765c4320111b082ec00abfce4783787180b41707cae77cdb7b2ed316197340
MD5 354787f4f50b95c3e88275c25274a47d
BLAKE2b-256 a29988b6230d331328e1e86abf7fdd36fceba23d65459e607ecfd0d4a3bcddd0

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 9621488dffa1fb8acb7b4b706ef99fa9ea602ff1f10694f5e7da0a1f0704f5fe
MD5 209c970d786c99c1df42acf947ff3926
BLAKE2b-256 4748e91fb4eae751e558d7d0a69f626bf4efeedc1102fe2ac005e9c378428fb1

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 140.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3811982ef9573b9eec217d3e57d86f5e4a4dab991071abb7615230878343d398
MD5 919aa206039e9c91be9df3fbef366685
BLAKE2b-256 c2af8dea7363b9f28094fa17f463a7b2bd07f7e40dce65daa32956d764b3a3e2

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp311-cp311-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp311-cp311-win32.whl
  • Upload date:
  • Size: 116.1 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 ce579a5670f18c43cbac9b60d53c78adf35341e20bc125289e180ede5259f1d9
MD5 fbc8e5bf6e14e4634744717ad3d97496
BLAKE2b-256 1471079d2b4499b58cdacb6941fb95aff06aa3a5385000098039bd589afcc19b

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d3958f586d46728cc99c0aa724a8fea7e5033020994839bf664db473d1047f0e
MD5 02b89ce7796153f91a996281f54ddda1
BLAKE2b-256 7bd836c8cbaf18f9dd80e1a64ce2136a3440e933155dc9e2d21589dfcb543807

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b98769ada8dddcad24d4d0a4513d329a352340a7c789ec2be048559c3879918f
MD5 7fb5feed3ecc09256bc905e1d880f4e8
BLAKE2b-256 81bbf16cd583921e2b34f34ce5e82765bdeb6b7227cee64d5487d54aae0085d0

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 370c2c1cead71feadc0e680889baa962bbc3131ec2f3d60300a2c5d892aa9ca4
MD5 69a0ea743e2b15b8122a5474dae44402
BLAKE2b-256 72910dd1ea2538a6b41b3cfe8245f0fc450901fd8c9a33732c1b6ee23c379e42

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 140.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ac61db2b9d7f7f6c0559a66453bf056f4e6a17527bdf07582f5ab0ef3fa6a1b4
MD5 f4a89569a6e2a9917ae3562aa85bd1e6
BLAKE2b-256 25346266c32bc3895e59d8f087db33e9eee2300efb96614e1e896a7557a7f057

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp310-cp310-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp310-cp310-win32.whl
  • Upload date:
  • Size: 116.1 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 a5bad5baea7e5575f96a60aff9b41b13ace96a3ad6f28ff2897504ca850feb8a
MD5 41b84c785f2ddc0a9c1ce974c4c671e9
BLAKE2b-256 90f842558f0fdacc235996cd8de60d442fc30b634b0cf8351dbd444e0f305f4e

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 efc0e550503b432ad64a66a76574ae36033573a8ad15f67f43d5680c5e0cb998
MD5 4dbd9b54ee14e54ac66eb13be47b6b93
BLAKE2b-256 28d319daa03507c7d5eec6609c88267cdc39c778f973b823f22bc387acaf5480

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 094b181f205b13d175619c689567dfae980b3efe2741c98b698a04de40514470
MD5 2e7c42c9b4459deea2aebb215ee39cea
BLAKE2b-256 ebbd4a466b646ef9e0da4ca22cc99476fdd2ed1590fbec3dcd9c3aae9ba13125

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 6ef54eacdf0f80960d95892727ba76c88b02c047c6285249fb9fabbadee3d723
MD5 eb50f3baadc8ebc0129af7edf8befa34
BLAKE2b-256 a47945c8a8986a165d5a77d6f778f5439d5578e59ebe9f65a15370d849303081

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 140.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e3e8470cf78105d0aaa67a593cdd0034cea429dd71ca6d2c60d8326621ebf422
MD5 48f6d680ccfb503be02d0dadfbe743c7
BLAKE2b-256 7bbbcd00281bca322f11cb25a6d1a2e0b00a68d43f40c66cdb82dd52f1aa4217

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp39-cp39-win32.whl.

File metadata

  • Download URL: pygixml-0.9.2-cp39-cp39-win32.whl
  • Upload date:
  • Size: 116.5 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.9.2-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 8a51e00b7683392e2248ff573eaa41c0159c2d895dff68b2ffae699e241e6859
MD5 13860e59ca78e46c9aeb426cebf30472
BLAKE2b-256 60c9401af20613deaaed66ed6bd77fd7df80796fbc3a1a9b5e6d64c96a1ab006

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bb9398ba09b9ebf6ebeedaa22606a1eaaf25d54a27f25b9d0909c22ec0b2a617
MD5 489e89df12f64961f2c4121b3012e855
BLAKE2b-256 60e547a642999ed8ef456d9da86a59c658f6f282262e14e0439593ac73fbe61b

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0c140a885c5b7db0da68d982bdd7435f75f5fd56def0417f3630cbda0748394b
MD5 229bfc642ea9717e22c8f5e19cb1f99d
BLAKE2b-256 19fbc6514efe67b381d2da3e7af5b08885368a40d61bcbc52fcb40958e6fda62

See more details on using hashes here.

File details

Details for the file pygixml-0.9.2-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.9.2-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 39ddbbfa243aa29743d331417b0e41b205a986992d1e4d5ab7fc233967f5b154
MD5 e30654c5e0a0ed09258153d100405885
BLAKE2b-256 a60058d9443955f5cd0702b39786150624f12a20571296f8bb26bcb939dae04e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page