Skip to main content
 首页 » 编程设计

php之从 JSON 文件中提取/抓取特定数据

2025年05月04日19zhenyulu

这困扰了我好几个小时。我一直在搜索,并且找到了很多信息。问题是,我不是那么好,我实际上是一个初学者。我想用 Python 来实现(如果可能的话!)。也许还有 JavaScript 和 PHP?让我解释一下。

我刚找到这个网站http://listeningroom.net这很棒。您可以创建/加入房间并上传轨道并与 friend 一起聆听。

我想从 .json 文件中提取/抓取/获取一些特定数据。 此文件包含艺术家、专辑名称、轨道名称 等。我只想提取艺术家、专辑和轨道名称。

http://listeningroom.net/room/chillasfuck/spins.json .json 文件 包含过去 24 小时内播放的轨道。

环顾四周后,我设法用 Python 抓取了整个 .json 文件(本地 .json 文件),其中包含以下可能不太有效的代码。

   json_data=open('...\spins.json') 
 
   data = json.load(json_data) 
   pprint(data) 
 
   json_data.close() 

这会打印出以下内容:

   [{u'endTime': u'1317752614105', 
   u'id': u'cf37894e8eaf886a0d000000', 
   u'length': 492330, 
   u'metadata': {u'album': u'Mezzanine', 
            u'artist': u'Massive Attack', 
            u'bitrate': 128000, 
            u'label': u'Virgin', 
            u'length': 17494.479054779807, 
            u'title': u'Group Four'}, 

只是打印的一部分

1. 我想从一个 url(顶部提供的那个)中抓取它 2. 只需获取“专辑”、“艺术家”和“标题” 3. 确保打印尽可能简单,如下所示:

Artist 
Track title 
Album 
 
Artist 
Track title 
Album 

4.如果不多就保存成.txt文件

我希望能得到一些帮助,我真的很想为自己创作这个,所以我可以查看更多音乐!

马文

请您参考如下方法:

Python(加载 json 之后)

for elem in data: 
    print('{artist}\n{title}\n{album}\n'.format(**elem['metadata'])) 

保存在文件中:

with open('the_file_name.txt','w') as f: 
    for elem in data: 
        f.write('{artist}\n{title}\n{album}\n\n'.format(**elem['metadata']))