छवि विवरण यहां दर्ज करेंमैं इस तरह के एपीआई पृष्ठों से डेटा खींचना चाहता हूं: https://api.discogs.com/releases/249504

आप देख सकते हैं कि इसमें शामिल है, उदाहरण के लिए...

"labels": [{"name": "RCA", "entity_type": "1", "catno": "PB 41447"

मैं इस डेटा को .csv के रूप में आउटपुट करने के लिए अपनी स्क्रिप्ट में लेबल.नाम और लेबल.कैटनो पढ़ना चाहता हूं

मैंने लेबल को लेबल.नाम में बदलने की कोशिश की, लेकिन यह काम नहीं किया और सिर्फ एक गंभीर त्रुटि पैदा की।

मेरी मुख्य scripts.js फ़ाइल में मेरे पास है...

  const id = data.id;
  const artist = data.artists[0].name;
  var title = data.title;
  var formats = data.formats;
  var labels = data.labels;
  var country = data.country;
  if (country == "") country = "Unknown";
  var released = data.released_formatted;
  if (typeof released == 'undefined') released = "Unknown";
  const genres = data.genres[0];
  var styles = data.styles;
  if (typeof styles == 'undefined') styles = "None";
  let tracklist =''; //sets tracklist to an empty string

[...]

            const id = data.id;
            const artist = data.artists[0].name;
            var title = data.title;
            var formats = data.formats;
            var labels = data.labels;
            var country = data.country;
            if (country == "") country = "Unknown";
            var released = data.released_formatted;
            if (typeof released == 'undefined') released = "Unknown";
            const genres = data.genres[0];
            var styles = data.styles;
            if (typeof styles == 'undefined') styles = "None";
            let tracklist =''; //sets tracklist to an empty string

...लेकिन मेरी csv.js फ़ाइल में मेरे पास भी है...

const id = data.id
const artists = data.artists ? data.artists.map(artist => artist.name) : []
const title = data.title || []
const formats = data.formats || []
const labels = data.labels || []
        console.log(labels);
const country = data.country || 'Unknown'
const released = data.released_formatted || 'Unknown'
const genres = data.genres || []
const styles = data.styles || []
const tracklist = data.tracklist ? data.tracklist.map(track => track.title) : []

मुझे यकीन नहीं है कि एक फ़ाइल में एक चर दूसरे में स्थिर क्यों है; शायद इसे ठीक करने की जरूरत है।

मैं अपनी सीएसवी फ़ाइल में एक कॉलम लेबल देना चाहता हूं।नाम और एक लेबल देना चाहता हूं। कैटनो।

1
double-happiness 17 जून 2019, 17:29

1 उत्तर

सबसे बढ़िया उत्तर

समस्या यह है कि आपका दिखाया गया 'लेबल' कोई वस्तु नहीं है। यह वस्तुओं की एक सरणी है। और इसे labels.name और labels.catno की तरह पढ़ने से काम नहीं चलेगा।

"labels": [{"name": "RCA", "entity_type": "1", "catno": "PB 41447" ...
          ^ Array

इसे किसी वस्तु में बदलना जैसे

"labels": {"name": "RCA", "entity_type": "1", "catno": "PB 41447" ...

या labels[0].name और labels[0].catno का उपयोग करके आपकी समस्या का समाधान होना चाहिए।

0
J. Sadi 17 जून 2019, 17:40