Python 提取dict转换为xml/

发布时间:2019-08-27 08:03:28编辑:auto阅读(1808)

    #!/usr/bin/python
    #-*- coding:gbk -*-
    #设置源文件输出格式
    import sys
    import getopt
    import json
    import createDict
    import myConToXML
    import myConToTable
    
    
    def getRsDataToDict():
        #获取控制台中输入的参数,并根据参数找到源文件获取源数据
        csDict={}
        try:
            #通过getopt获取参数
            opts,args=getopt.getopt(sys.argv[1:],"",["output=","file=","query="])
            csDict=createDict.procParam(opts,args)
            return csDict
        except getopt.GetoptError:
            print getopt.error
            sys.exit()
    
    def collectionToJson(contentTxt):
        #参数1表示python对象;参数2表示按照字典排序;参数3表示根据格式缩进显示
        jsoninfo = json.dumps(contentTxt,sort_keys=True,indent=2)
        print "JSON输出:"
        print type(jsoninfo)
        print jsoninfo
    
    if __name__=="__main__":
        #输入参数格式为>python test.py output=json file=c:\..\input.txt query=Permission[0]
        inputParm=getRsDataToDict()
        if inputParm["query"]!=None:
            csDict=createDict.getQueryRs(inputParm["contentTxt"],inputParm["query"])
        else:
            csDict=inputParm["contentTxt"]
        output=inputParm["output"]
        if output=="json":
            collectionToJson(csDict)
        elif output=="xml":
            path='C:\\Users\\Vincent\\Documents\\MyTest1.xml'
            encod='utf8'
            myConToXML.getDictToXml(csDict,path,encod)
        elif output=="table":
            myConToTable.ContentToTable(csDict)


关键字