いくつかの Youtube XML データを解析するための基本的な方法を使用しています。
これは Youtube のサンプル XML ファイルです: http://jimpix.co.uk/youtube.xml
XML ファイルは Youtube の標準の Youtube バージョンよりもはるかに見やすいため、XML として保存しました (こちらを参照) 。
これは、ビデオ ID とタイトルを抽出するために使用している基本的なコードです。
Dim vurl = "http://jimpix.co.uk/youtube.xml"
Set http = Server.CreateObject("msxml2.ServerXMLHTTP")
http.Open "GET", vurl, False
http.Send
Set dom = http.responseXML
Set items = dom.getElementsByTagName("entry")
For Each item In items
Set id = item.getElementsByTagName("name")
If NOT (id IS Nothing) Then
var_id = id(0).Text
End If
response.write "<hr>var_id: "&var_id&"</hr>"
Set title = item.getElementsByTagName("title")
If NOT (title IS Nothing) Then
var_title = title(0).Text
End If
response.write "<hr>var_title: "&var_title&"</hr>"
Next
ID やタイトルのような単純なタグで保持されていないため、ビデオの長さ、サムネイル、再生回数を取得しようとして立ち往生しています。
たとえば、ID とタイトルは次のようになります。
<entry...>
<id>http://gdata.youtube.com/feeds/api/videos/9TN3VtWwks4</id>
...
<title type="text">
Sign Language - Multi-Award Winning short film - Director's Cut
</title>
</entry>
ただし、再生時間、サムネイル、再生回数を取得するのは困難です。
<entry...>
<media:group>
<media:thumbnail url="http://i.ytimg.com/vi/9TN3VtWwks4/0.jpg" height="360" width="480" time="00:02:28.500"/>
<yt:duration seconds="297"/>
<yt:statistics favoriteCount="0" viewCount="198826"/>
</media:group>
</entry>
これら 3 つの変数を XML から抽出する方法について、アドバイスをいただけないでしょうか。