1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python json转xml_Python实现XML到JSON的转换并编写 python xml 转化 为 Json 进行 写入

python json转xml_Python实现XML到JSON的转换并编写 python xml 转化 为 Json 进行 写入

时间:2021-04-01 10:48:41

相关推荐

python json转xml_Python实现XML到JSON的转换并编写 python xml 转化 为 Json 进行 写入

嗷嗷,网上找了个脚本

参考

,自己改成傻瓜模式的xml转化为json并进行写入。

import xmltodict

import json

# xml to json

def xmlToJson(xml_str):

try:

json_dict = xmltodict.parse(xml_str, encoding='utf-8')

json_str = json.dumps(json_dict, indent=2)

return json_str

except:

pass

# json to xml

def jsonToXml(json_str):

try:

json_dict = json.loads(json_str)

xml_str = xmltodict.unparse(json_dict, encoding='utf-8')

except:

xml_str = xmltodict.umparse({'request': json_dict}, encoding='utf-8')

finally:

return xml_str

# load xml file

def load_json(xml_path):

# 获取xml文件

xml_file = open(xml_path, 'r')

xml_str = xml_file.read()

# 将读取的xml字符串转换为字典

json_dict = xmltodict.parse(xml_str)

# 将字典转换为json格式的字符串

json_str = json.dumps(json_dict, indent=2)

return json_str

#现在要将xml转化为json

json_1=load_json( 'D:\crazing_1.xml')

with open('res.json', 'w',encoding='utf-8') as f:

f.write(json_1)

#json.dump(json_1, f)

#res.json是目标文件

现在就实现将crazing_1.xml转化为json并写入res.json了!

具体怎么批量写入还转化,明儿再研究下!我真是太蠢了哈哈哈哈哈哈

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

手打分割线!

写了一个很烂的批量转换并重命名 xml转json文件!

那叫一个难看啊……

import xmltodict

import json

import os

# xml to json

def xmlToJson(xml_str):

try:

json_dict = xmltodict.parse(xml_str, encoding='utf-8')

json_str = json.dumps(json_dict, indent=2)

print('222')

return json_str

except:

print('111')

pass

# json to xml

def jsonToXml(json_str):

try:

json_dict = json.loads(json_str)

xml_str = xmltodict.unparse(json_dict, encoding='utf-8')

except:

xml_str = xmltodict.umparse({'request': json_dict}, encoding='utf-8')

finally:

return xml_str

# load xml file

def load_json(xml_path):

# 获取xml文件

xml_file = open(xml_path, 'r')

xml_str = xml_file.read()

# 将读取的xml字符串转换为字典

json_dict = xmltodict.parse(xml_str)

# 将字典转换为json格式的字符串

json_str = json.dumps(json_dict, indent=2)

return json_str

#原始文件路径

path = "D:\\NEU-DET\\ANNOTATIONS"

filelist = os.listdir(path) #该文件夹下所有的文件(包括文件夹)

count=0

for file in filelist: #遍历所有文件

Olddir=os.path.join(path,file) #原来的文件路径

if os.path.isdir(Olddir): #如果是文件夹则跳过

continue

filename=os.path.splitext(file)[0] #文件名

filetype=os.path.splitext(file)[1] #文件扩展名

json_1 = load_json(path+"\\"+file)

#目标文件路径

newpath="D:\\NEU-DET\\JSON\\"

#目标文件路径+命名格式

Newdir = (newpath+'res'+str(count)+'.json')

print(Newdir)

with open(Newdir, 'w', encoding='utf-8') as f:

f.write(json_1)

count+=1

=============================================================================================

记录一条,批量图片命名,

参考博客

import os

path_name = r'D:\NEU-DET\IMAGES' # 批量修改的文件夹路径

i = 0 # 起始数字

for item in os.listdir(path_name):

original_name = os.path.join(path_name, item)

new_name = os.path.join(path_name, ('res'+str(i)+'.jpg'))

print(new_name)

os.rename(original_name, new_name) # 重命名

i += 1

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。