【问题标题】:Youtube feed parse xml c# razorYoutube 提要解析 xml c# razor
【发布时间】:2012-10-19 22:13:08
【问题描述】:

我正在尝试解析 youtube xml 提要并循环浏览某个用户的视频,你是怎么做的?我正在使用 umbraco 剃须刀 ( c# )。

@using System;
@using System.Linq;
@using System.Collections.Generic;
@using System.Xml;
@using umbraco.MacroEngines;
@using System.Xml.Linq;
@inherits System.Xml.XPath.XPathNodeIterator;
@inherits umbraco.MacroEngines.DynamicNodeContext;
@inherits DynamicNodeContext

@{
    dynamic xmlv = new DynamicXml(umbraco.library.GetXmlDocumentByUrl("https://gdata.youtube.com/feeds/api/users/[username]/uploads"));   

    <ul>
    @foreach (var property in xmlv.BaseElement.Elements.Where(x => x.Elements("Name") == "group"))
    {
        <li>
           <p>
            @property.Title
            @property.Content
            @property.Thumbnail
           </p>
        </li>
    }
    </ul>
}

【问题讨论】:

    标签: c# api razor youtube umbraco


    【解决方案1】:
    XDocument xDoc = XDocument.Load("https://gdata.youtube.com/feeds/api/standardfeeds/most_viewed");
    XNamespace media = "http://search.yahoo.com/mrss/";
    XNamespace yt = "http://gdata.youtube.com/schemas/2007";
    
    var items = xDoc.Descendants(media + "group")
                    .Select(i => new
                    {
                        Title = i.Element(media + "title").Value,
                        Content = i.Element(media + "content").Attribute("url").Value,
                        Thumbnail = i.Element(media + "thumbnail").Attribute("url").Value,
                        Uploaded = (DateTime)i.Element(yt + "uploaded"),
                    })
                    .ToList();
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 2011-03-10
    • 2012-01-26
    • 1970-01-01
    • 2012-07-02
    • 2013-05-27
    相关资源
    最近更新 更多