本人为python初学者,求一段python代码,能够批量修改路径下指定文件中json的指定内容,如{filename:1.dav}修改为{filename:1.avi}
修改前的json内容为:
{
"filename":"1.dav";
}
需要修改为:
{
"filename":"2.avi";
}
目前已经大致知道可以使用
import json
path = u'D:'
dict = {}
get_json_date = json.load(f)
修改json内容
with open(path,'w',endcode='utf8') as r:
json_dump = json.dump()
r.close()
不清楚如何批量获取及修改json内的filename,视频名称对应文件夹名称,请大佬指教,谢谢!
回答
问题补充:
目前写出的代码如下,在自己家写的代码报了 PermissionError: [Errno 13] Permission denied 错误
import json
import os
def get_json_data(old_json_path):
for root,dirs,files in os.walk(old_json_path):
for file_name in files:
if file_name.endswith('.json'):
with open(old_json_path,'r',encoding='utf8') as f:
content = f.read()
json_content = eval(content)
print(type(json_content))
if 'fileName' in json_content:
content_str = json_content.replace('1.dav','1.avi')
json_data = json.loads(content_str)
print(type(json_data))
with open(old_json_path,'w',encoding='utf8') as r:
r.write(old_json_path)
if name == "main":
old_json_path = r"D:\python\练习\改json内容\test"
get_json_data(old_json_path)