我需要在多个 json 文件中提取键“文本”的值,并将该值写入 UTF-8 格式的单独文本文件。
有 2,900 个 json 文件,我已将 json、os、glob 导入运行 python 3.7 64 位、W10、VS studio 的环境,将当前工作目录设置为存在 json 文件的文件夹
python:这成功地将一个json文件'j_news1'中的关键'text'值写入一个文本文件'j_news1.txt:
with open('j_news1.txt', 'w') as json_file:
json.dump(j_news1['text'], json_file)
--我为cwd中的所有文件创建了一个文件列表:
filelist = glob.glob(',/*.json')
对文件夹中的所有 json 进行文件列表和打开读取、打开写入操作的代码:
for fname in filelist:
FI = open(fname, 'r')
FO = open(fname.replace('json', 'txt'), 'w')
for line in FI:
FO.write(line)
我找不到的是如何仅提取关键“文本”并将其写入单独的文本文件。
来自文件的示例 json:
pprint.pprint(j_news1)
{'author': '',
'crawled': '2018-02-02T15:37:30.069+02:00',
'entities': {'locations': [{'name': 'us', 'sentiment': 'none'}],
'organizations': [{'name': 'mins ago cnbc',
'sentiment': 'negative'}],
'persons': [{'name': 'kate rogers', 'sentiment': 'negative'}]},
'external_links': [],
'highlightText': '',
'highlightTitle': '',
'language': 'english',
'locations': [],
'ord_in_thread': 0,
'organizations': [],
'persons': [],
'published': '2018-02-02T14:39:00.000+02:00',
'text': "Police officer shortage growing problem in US 54 Mins Ago CNBC's "
'Kate Rogers reports police departments around the country are facing '
'a major challenge recruiting and retaining staff.',
'thread': {'country': 'US',
'domain_rank': 767,
'main_image': 'https://fm.cnbc.com/applications/cnbc.com/resources/img/editorial/2018/02/02/104984906-6ED2-SB-020218-PoliceShortage.600x400.jpg',
'participants_count': 0,
'performance_score': 0,
'published': '2018-02-02T14:39:00.000+02:00',
'replies_count': 0,
'section_title': 'Latest Video',
'site': 'cnbc.com',
慕无忌1623718
相关分类