#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Sun Feb 28 18:20:27 2021

@author: yihan
"""
import os
path='/Users/yihan/Desktop'
os.chdir(path)

from xml.dom import minidom

def get_attrvalue(node, attrname):
     return node.getAttribute(attrname) if node else ''

def get_nodevalue(node, index = 0):
    return node.childNodes[index].nodeValue if node else ''

def get_xmlnode(node, name):
    return node.getElementsByTagName(name) if node else []

def get_xml_data(filename = '3208.xml'):
    doc = minidom.parse(filename) 
    root = doc.documentElement

    item_nodes = get_xmlnode(root, 'item')
    print ("item_nodes:", item_nodes)

    item_list=[]
    for node in item_nodes: 
      
        node_title = get_xmlnode(node, 'title')
        
        node_description = get_xmlnode(node, 'description')

        item_title =get_nodevalue(node_title[0])
        item_description = get_nodevalue(node_description[0])
        

        item = {}
        item['title'] , item['description']  = (
           item_title , item_description
        )
        item_list.append(item)
    return item_list

def test_load_xml():
    item_list = get_xml_data()
    for item in item_list :
        print ('-----------------------------------------------------')
        if item:
            item_str='Title:\t%s\n\nDescription:\t%s' % (item['title'] , item['description'])
            print (item_str)

if __name__ == "__main__":
    test_load_xml()
