1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-07-15 01:24:29 +02:00
Files
.github
docs
parsers
acpi.md
airport.md
airport_s.md
arp.md
blkid.md
cksum.md
crontab.md
crontab_u.md
csv.md
csv_s.md
date.md
df.md
dig.md
dir.md
dmidecode.md
dpkg_l.md
du.md
env.md
file.md
finger.md
free.md
fstab.md
group.md
gshadow.md
hash.md
hashsum.md
hciconfig.md
history.md
hosts.md
id.md
ifconfig.md
ini.md
iostat.md
iostat_s.md
iptables.md
iw_scan.md
jobs.md
kv.md
last.md
ls.md
ls_s.md
lsblk.md
lsmod.md
lsof.md
lsusb.md
mount.md
netstat.md
ntpq.md
passwd.md
ping.md
ping_s.md
pip_list.md
pip_show.md
ps.md
route.md
rpm_qi.md
sfdisk.md
shadow.md
ss.md
stat.md
sysctl.md
systemctl.md
systemctl_lj.md
systemctl_ls.md
systemctl_luf.md
systeminfo.md
time.md
timedatectl.md
tracepath.md
traceroute.md
ufw.md
ufw_appinfo.md
uname.md
upower.md
uptime.md
vmstat.md
vmstat_s.md
w.md
wc.md
who.md
xml.md
yaml.md
_config.yml
readme.md
utils.md
jc
man
templates
tests
.gitignore
CHANGELOG
CONTRIBUTING.md
EXAMPLES.md
LICENSE.md
MANIFEST.in
README.md
_config.yml
build-package.sh
docgen.sh
install.sh
mangen.py
pypi-upload.sh
readmegen.py
requirements.txt
runtests.sh
setup.cfg
setup.py
updatedocs.sh
jc/docs/parsers/xml.md
Kelly Brazil 43d34461e2 update docs
2021-12-01 16:12:51 -08:00

2.0 KiB

Home

jc.parsers.xml

jc - JSON CLI output utility XML file parser

Usage (cli):

$ cat foo.xml | jc --xml

Usage (module):

import jc.parsers.xml
result = jc.parsers.xml.parse(xml_file_output)

Schema:

XML Document converted to a Dictionary
See https://github.com/martinblech/xmltodict for details

{
  "key1":   string/object,
  "key2":   string/object
}

Examples:

$ cat cd_catalog.xml
<?xml version="1.0" encoding="UTF-8"?>
<CATALOG>
  <CD>
    <TITLE>Empire Burlesque</TITLE>
    <ARTIST>Bob Dylan</ARTIST>
    <COUNTRY>USA</COUNTRY>
    <COMPANY>Columbia</COMPANY>
    <PRICE>10.90</PRICE>
    <YEAR>1985</YEAR>
  </CD>
  <CD>
    <TITLE>Hide your heart</TITLE>
    <ARTIST>Bonnie Tyler</ARTIST>
    <COUNTRY>UK</COUNTRY>
    <COMPANY>CBS Records</COMPANY>
    <PRICE>9.90</PRICE>
    <YEAR>1988</YEAR>
  </CD>
  ...

$ cat cd_catalog.xml | jc --xml -p
{
  "CATALOG": {
    "CD": [
      {
        "TITLE": "Empire Burlesque",
        "ARTIST": "Bob Dylan",
        "COUNTRY": "USA",
        "COMPANY": "Columbia",
        "PRICE": "10.90",
        "YEAR": "1985"
      },
      {
        "TITLE": "Hide your heart",
        "ARTIST": "Bonnie Tyler",
        "COUNTRY": "UK",
        "COMPANY": "CBS Records",
        "PRICE": "9.90",
        "YEAR": "1988"
      },
  ...
}

info

info()

Provides parser metadata (version, author, etc.)

parse

parse(data, raw=False, quiet=False)

Main text parsing function

Parameters:

data:        (string)  text data to parse
raw:         (boolean) output preprocessed JSON if True
quiet:       (boolean) suppress warning messages if True

Returns:

Dictionary. Raw or processed structured data.

Parser Information

Compatibility: linux, darwin, cygwin, win32, aix, freebsd

Version 1.6 by Kelly Brazil (kellyjonbrazil@gmail.com)