python - 如何获取一个 JSON 文件而不是数千个?
问题描述
我正在使用 TweetScraper 来抓取带有某些关键字的推文。现在,每条推文都被保存到一个单独的 JSON 文件中的一个集合文件夹中,所以我最终得到了数千个 JSON 文件。有没有办法让每条新推文都附加到一个大的 JSON 文件中?如果没有,我如何在 Python 中处理/使用数千个小型 JSON 文件?
这是处理保存数据的 settings.py 部分:
# settings for where to save data on disk
SAVE_TWEET_PATH = './Data/tweet/'
SAVE_USER_PATH = './Data/user/'
解决方案
我会读取所有文件。将数据放入列表中并再次保存为 JSON
import os
import json
folder = '.'
all_tweets = []
# -- read ---
for filename in sorted(os.listdir(folder)):
if filename.endswith('.json'):
fullpath = os.path.join(folder, filename)
with open(fullpath) as fh:
tweet = json.load(fh)
all_tweets.append(tweet)
# --- save ---
with open('all_tweets.json', 'w') as fh:
json.dump(all_tweets, fh)
推荐阅读
- javascript - Wordpress 网站在 Facebook 移动浏览器中损坏
- php - PHP-登录按钮未更改为注销按钮
- javascript - 使用 querySelectorAll 在几个图标上添加事件侦听器?
- android - BottomNavigationView 未在模拟器上显示
- python - Flask-Mail 电子邮件未发送
- android - 使用assetlinks.json 排除或仅允许某些网址
- javascript - 是否可以使用 grecaptcha.execute 绕过 hCaptcha?
- javascript - 如何将节点模块“child_process”导入 Angular 项目?
- java - 带有gradle的java 9模块不起作用:错误:找不到模块:
- php - 如何从 GitHub 在 laravel 中添加 SDK?