如何使用python glob读取特定的JSON文件



我在一个文件夹中有一组JSON文件。

示例文件:

-2022_06_13_07_14_f71cd512135bdab9.json
-2022_06_13_07_1421_f71cd512135bdab9.json
-2022_06_13_07_12314_f71cd512135bdab9.json
-2022_06_14_132_14_f71cd512135bdab9.json
-2022_06_14_74647_14_f71cd512135bdab9.json

我不需要一次读取所有文件,而需要按天读取。

交货:2022 _06_13_07_14_f71cd512135bdab9。Json对应2022_06_13.

同样明智的是,我需要读取所有的JSON文件,并在Daywise批次中进行更改。

首先读取2022_06_13中的所有JSON文件,然后读取2022_06_14中的所有JSON文件,依此类推。我想使用通配符与循环日明智列表。

我对下面一行的问题。如何添加通配符来查找与特定日期相关的所有JSON文件?

json_files = glob.glob(os.path.join(path_to_json, 'day*.json'))

当前代码:

start = datetime.datetime(2022, 8, 25)
end = datetime.datetime(2022, 12, 25)
datelist = pd.date_range(start, end)
path_to_json = r'C:UsersAdminINPUT'
for a in datelist:
day=str(a)[:10].replace('-', '_')
json_files = glob.glob(os.path.join(path_to_json, 'day*.json'))

for i in json_files:
with open(i,'r') as fi:
dict = json.load(fi)
dict[0]["Name"] = "NETFLIX"
fi.close()
l= i.rsplit('\', 1)[1]
Output_URL="C:\Users\Admin\OUTPUT\Netflix\"+l
with open(Output_URL, "w+") as f:
json.dump(data, f)

修改如下:json_files = glob.glob(os.path.join(path_to_json, 'day*.json'))

:json_files = glob.glob(os.path.join(path_to_json, f"{a.strftime('%Y_%m_%d')}*.json"))

这将采取日期a,并把它变成一个字符串,类似于一个在你的文件。在它后面留下星号作为通配符,您应该每次都得到与日期a匹配的所有文件。

相关内容

  • 没有找到相关文章

最新更新