Чтение атрибута из файла XML / RSS с использованием AS3 - PullRequest
0 голосов
/ 14 февраля 2011

очень простой вопрос, у меня есть это: (только часть полного файла rss)

 <item>
      <title>Ok, de regalo de San Valentin me pueden dar un viaje a Playa del Carmen! Digo, entre todos lo pagan! No?? #So&#241;arNoCuestaNada</title>
      <link>http://twitter.com/glenyvalente/statuses/37202068301295616</link>
      <description>Ok, de regalo de San Valentin me pueden dar un viaje a &lt;b&gt;Playa&lt;/b&gt; del Carmen! Digo, entre todos lo pagan! No?? &lt;a href=&quot;http://search.twitter.com/search?q=%23So%C3%B1arNoCuestaNada&quot; onclick=&quot;pageTracker._setCustomVar(2, 'result_type', 'recent', 3);pageTracker._trackPageview('/intra/hashtag/#So&#241;arNoCuestaNada');&quot;&gt;#So&#241;arNoCuestaNada&lt;/a&gt;</description>
      <pubDate>Mon, 14 Feb 2011 17:30:38 +0000</pubDate>
      <guid>http://twitter.com/glenyvalente/statuses/37202068301295616</guid>
      <author>glenyvalente@twitter.com (Gleny Valente)</author>
      <media:content type="image/jpg" width="48" url="http://a1.twimg.com/profile_images/1225905511/S5030401_normal.JPG" height="48"/>
      <google:image_link>http://a1.twimg.com/profile_images/1225905511/S5030401_normal.JPG</google:image_link>
      <google:location>Venezuela</google:location>
      <twitter:metadata>
        <twitter:result_type>recent</twitter:result_type>
      </twitter:metadata>
    </item>

И я прочитал <title> и <pubDate> используя:

function rssLoaded(evt:Event):void {
    rssXML = XML(rssLoader.data);
    for(var item:String in rssXML.channel.item) {
    fechas.push(rssXML.channel.item[item].pubDate.substr(0, 16));
    titulos.push(rssXML.channel.item[item].title);
    trace(rssXML.channel.item[item].media:content.attributes.url);
    total=total+1;
    }
    trace(total);
}

но trace(rssXML.channel.item[item].media:content.attributes.url); всегда пусто, так как я могу прочитать атрибут url из тега <media> ???Спасибо!

Ответы [ 2 ]

0 голосов
/ 10 февраля 2016

Вот информация, которая даст вам наиболее близкий ответ на ваш запрос: В разделе кода AS добавьте этот импорт:

private var media:Namespace = new Namespace("http://search.yahoo.com/mrss/");

Затем в вашем функциональном блоке (ах) вы можете получить доступ к пространству имен мультимедиа следующим образом:

var urlString:String = rssXML.media::content.@url[0];

media :: content использует пространство имен media, импортированное выше. Теперь вы можете получить доступ к членам как контент. Внутри этого находится URL-адрес члена, который может быть индексированным массивом, поэтому мы специально говорим @url [0], чтобы получить первую запись.

Если вы сомневаетесь, вы можете обратиться к этому дополнительному ответу: XML AS3 Выбор значения пространства имен URL-адреса изображения

0 голосов
/ 14 февраля 2011

хорошо, попробуйте это

попробуйте rssXML.channel.item [item] .namespace ("media") :: content. @ Url

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...