XMLの要素を取得する関数、GetElementNameを作ってみました。(元ネタはこちら)
function Get-Elementname([Xml.XmlElement]$element) { for ( $i = 0; $i -lt $element.get_ChildNodes().Count; $i++ ) { $element.get_ChildNodes().Item($i).Name } }
たとえば、下記のようにしてCNNのRSSを読み込み
PS>$xml = (New-Object System.Net.WebClient).DownloadString('http://rss.cnn.com/rss/cnn_topstories.rssl')
$xml.rss.channelの下の要素にどのようなものがあるかを調べるには、下記のようにします。
PS> Get-Elementname $xml.rss.channel
この関数は、get_ChildNodes().Item(要素番号).Name で要素名を取得出来ることを利用しています。
コメント