2016-07-01 5 views
0

Ich habe versucht, die anderen Antworten auf dieses Forum, aber ohne Glück. Ich versuche, die Enclosure-URL für jeden Eintrag aus einem RSS-Feed zu extrahieren (es enthält die direkte Verknüpfung des MP3-Audio), so dass ich eine Seite erstellen kann, die einen integrierten Player für alle Audiodaten enthalten wird.Get Gehäuse URL von RSS-Feed in JavaScript

Hier ist, was ich bisher:

var FEED_URL = 'https://www.spreaker.com/show/1720272/episodes/feed'; 

$.ajax({ 
    url: document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q=' + encodeURIComponent(FEED_URL), 
    dataType: 'json', 
    success: function(data) { 
    $(data).find("item").each(function(i) { 
     var URL = $(this).find("enclosure").attr("url"); 
     console.log(URL); 
    }); 
    } 
}) 

Hier ist ein Beispiel für eines der Elemente:

 <item> 
      <title>Episode 2 - 7 Minute Leadership</title> 
      <link>https://www.spreaker.com/user/paul_falavolito/epsiode-2-7-minute-leadership</link> 
      <description>Why should anyone be led by you?</description> 
      <guid isPermaLink="false">https://api.spreaker.com/episode/8296378</guid> 
      <pubDate>Tue, 19 Apr 2016 13:16:50 +0000</pubDate> 
      <enclosure url="https://api.spreaker.com/download/episode/8296378/episode_2_7_minute_leadership.mp3" length="0" type="audio/mpeg"></enclosure> 
      <itunes:author>Paul Falavolito</itunes:author> 
      <itunes:subtitle>Why should anyone be led by you?</itunes:subtitle> 
      <itunes:summary>Why should anyone be led by you?</itunes:summary> 
      <itunes:duration>713</itunes:duration> 
      <itunes:keywords>motivation,business,leadership</itunes:keywords> 
      <itunes:explicit>clean</itunes:explicit> 
      <itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/f71be8f6c859a4ce5669a83cbf3bcd31.jpg"/> 
     </item> 

Sie können ein Gehäuse URL sehen, dass es die zu einem mp3 verweist. Das ist die URL, die ich extrahieren möchte.

Alle Vorschläge würden sehr geschätzt werden.

+0

Ich würde nicht denken 'datatype:‚json'' korrekt ist; das rss sieht mehr wie XML aus. –

Antwort

0

Dies ist, wie ich am Ende das Gehäuse url bekommen:

$(document).ready(function() { 
    var feed = "https://crossorigin.me/https://www.spreaker.com/show/1720272/episodes/feed"; 

    $.ajax(feed, { 
    accepts: { 
     xml: "application/rss+xml" 
    }, 
    dataType: "xml", 
    success: function(data) { 
     $(data).find("enclosure").each(function() { 
     var el = $.parseHTML($(this)[0].outerHTML); 
     var url = $(el).attr('url'); 
     console.log(url); 
     }); 
    } 
    }); 
});