Python 提取dict轉換爲xml/json/table並輸出

#!/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)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章