【发布时间】:2017-04-19 05:11:57
【问题描述】:
我正在尝试从 YouTube 视频中获取信息。我从如下所示的文件中获取 ID:
songlist.json
["vbMQfaG6lo8", "07UwP3kHTTk", "gjDK4OiuIfk", "NlrK03iz74A", "E_1-oylPHjs"]
之后我需要文件并且还需要每个 id 的数据
var songlistshit = './static/js/songlistinfo.json'
var allSongs = require('./static/js/songlist.json')
for(var i = 0; i < allSongs.length; i++) {
var ytId = allSongs[i]
request("https://www.googleapis.com/youtube/v3/videos?id=" + ytId + "&key=API_KEY%20&part=snippet,contentDetails,statistics,status", function (error, response, body) {
var sd = JSON.parse(body);
var xd = sd.items[0].snippet.title
var aus = sd.items[0].snippet
name = aus.title
tn = aus.thumbnails.default.url
var data = '\n{"name": "' + name + '", "user": "Mstiekema", "img": "' + tn + '"},'
fs.appendFile(songlistshit, data, 'utf8', function(err) {if (err) {return}})
})
};
但是当它附加到第二个 JSON 文件时,它会丢失原始顺序。这是如何将其放入文件的示例。
songlistinfo.json
{"name": "Enjoy The Silence by KI Theory (Ghost In The Shell Trailer Music)", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/E_1-oylPHjs/default.jpg"},
{"name": "Majora's Mask - Terrible Fate", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/vbMQfaG6lo8/default.jpg"},
{"name": "Lilium Elfen Lied-エルフェンリート", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/07UwP3kHTTk/default.jpg"},
{"name": "MODERN PILLOW TALKING", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/gjDK4OiuIfk/default.jpg"},
{"name": "Midna's Theme on Guitar", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/NlrK03iz74A/default.jpg"},
但它不应该是这个顺序。顺序应如下:
songlistinfo.json
{"name": "Majora's Mask - Terrible Fate", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/vbMQfaG6lo8/default.jpg"},
{"name": "Lilium Elfen Lied-エルフェンリート", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/07UwP3kHTTk/default.jpg"},
{"name": "MODERN PILLOW TALKING", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/gjDK4OiuIfk/default.jpg"},
{"name": "Midna's Theme on Guitar", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/NlrK03iz74A/default.jpg"},
{"name": "Enjoy The Silence by KI Theory (Ghost In The Shell Trailer Music)", "user": "Mstiekema", "img": "https://i.ytimg.com/vi/E_1-oylPHjs/default.jpg"},
(我知道 songlistinfo.json 文件不包含正确的 JSON 结构,但我会在修复顺序问题后修复它。)
【问题讨论】:
-
您可能希望删除 url 中包含 api 键的部分。
标签: javascript json node.js youtube-api