Привет всем, я пытаюсь найти параметр для видео ударной волны в источнике веб-страницы.Источник выглядит так:
<object align="middle" width="480" height="320" viewastext="" id="player" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"> <param value="sameDomain" name="allowScriptAccess"> <param value="http://mediawebsite.com/lcmplayer.swf?autoStart=1&hidecontrols=1&&noresize=1&file=http%3A%2F%2Ftx02.us.mediawebsite.com%2Fedge2%2F31dfty452611%26sec%3D1090" name="movie"> <param value="best" name="quality"> <param value="#000000" name="bgcolor"> <param value="true" name="allowFullScreen"> <param value="" name="FlashVars"> <embed align="middle" width="480" height="320" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="sameDomain" name="player" bgcolor="#000000" flashvars="" quality="best" src="http://mediawebsite.com/lcmplayer.swf?autoStart=1&hidecontrols=1&&noresize=1&file=http%3A%2F%2Ftx02.us.mediawebsite.com%2Fedge2%2F31dfty452611%26sec%3D1090"> </object>
Мне просто нужно получить это из вышеперечисленного:
http://mediawebsite.com/lcmplayer.swf?autoStart=1&hidecontrols=1&&noresize=1&file=http%3A%2F%2Ftx02.us.mediawebsite.com%2Fedge2%2F31dfty452611%26sec%3D1090
или что бы то ни было в пределах HTML-код. Конечно, ссылка HTML-кода может изменять каждое обновление, поэтому мне нужно просто получить то, что находится внутри параметра.
Я использую HtmlAgilityPack как указано в заголовке и VB.net 2008.
Это мой текущий код, который я использую для загрузки и анализа HTML:
Imports HtmlAgilityPack Imports System.Text.RegularExpressions Private Sub getVidLink() Dim doc As New HtmlDocument() 'doc.LoadHtml("<html><body><p><table id=""foo""><tr><th>hello</th></tr><tr><td>world</td></tr></table></body></html>") doc.Load("C:\kathryn\fpHTML.html") For Each table As HtmlNode In doc.DocumentNode.SelectNodes("//object") Debug.Print("Found: " + table.Id) For Each row As HtmlNode In table.SelectNodes("param") Debug.Print(row.Id) Next Next End Sub
Но он не находит никаких значенийдля парам. Они все пустые? ...
Любая помощь будет отличной!
Дэвид
Dim node = doc.DocumentNode.SelectSingleNode("//object/param[@name='movie']").Attributes("value").Value
должен дать вам то, что вам нужно