#!/usr/bin/env python
import csv
import sys
import re
import xml.etree.ElementTree as ET
# Windows Modules Installerstopped540072007500730074006500640049006E007300740061006C006C00650072002F0031000000
def process_xml(xml_info):
try:
xml_result = ""
root = ET.fromstring(""+xml_info+"")
for child in root:
#xml_result = xml_result + child.tag + child.attrib + child.text+"\n"
xml_result = xml_result + child.text + "@"
#xml_result = xml_result + child.attrib + "\n"
return xml_result
except:
return "Error: "+xml_info
def main():
if len(sys.argv) != 3:
print "Usage: python ev_process_xml_parameters.py [raw_xml_data] [extracted_xml_data]"
print sys.argv[1]
print len(sys.argv)
sys.exit(3)
raw_xml_data = sys.argv[1]
extracted_xml_data = sys.argv[2]
infile = sys.stdin
outfile = sys.stdout
r = csv.DictReader(infile)
header = r.fieldnames
w = csv.DictWriter(outfile, fieldnames=r.fieldnames)
w.writeheader()
for result in r:
if result[raw_xml_data]:
result[extracted_xml_data] = process_xml(result[raw_xml_data])
#result[extracted_xml_data] = raw_xml_data
if result[extracted_xml_data]:
w.writerow(result)
main()