C#でのXPath利用方法
この例では、ニコニコ生放送の一般タグの放送一覧RSSの1ページ目を取得してテストしています。
XmlDocument xml = new XmlDocument(); xml.Load("http://live.nicovideo.jp/recent/rss?tab=common&sort=start&p=1"); XmlNodeList list = xml.SelectNodes("/rss/channel/item/title"); foreach (XmlNode node in list) { Console.WriteLine(node.InnerText); }
このコードの結果、正常に各放送のタイトルを取得することができた。
また、次のようにすることで、各itemにある放送の詳細情報までを取得することが可能になる。
XmlDocument xml = new XmlDocument(); xml.Load("http://live.nicovideo.jp/recent/rss?tab=common&sort=start&p=1"); XmlNodeList items = xml.SelectNodes("/rss/channel/item"); foreach (XmlNode list in items) { Console.WriteLine("Title:"+list.SelectSingleNode("title").InnerText); Console.WriteLine("Link:" + list.SelectSingleNode("link").InnerText); }
こちらのほうが汎用性がありそうだね。
もちろん、XmlDocumentなどを使う際は
using System.Xml;
を忘れずに。