2

Grooveshark から曲を解析しようとしていますが、JavaScript の更新されたソース コードにアクセスする方法がわかりません。URL を使用すると、JavaScript によって更新されたライブ ソースではなく、元のソースが取得されます。つまり、一部の新しい ID データにアクセスできません。

var node = doc.DocumentNode.SelectSingleNode("//*[@id='now-playing-metadata']/a");
text = node.FirstChild.InnerText.Trim();

HTML Agility ライブラリを使用して Web サイトを解析しています。

4

1 に答える 1

1

お気づきのとおり、問題は Html Agility Pack が単に H​​ttp クライアントを使用して URL を文字列としてダウンロードすることです。あなたの場合、DOM を使用して Javascript エンジンでダウンロードしたコンテンツを実行する必要があります。phantom.js のようなヘッドレス ブラウザ クライアントをお勧めします。利用可能な C# ドライバがあります。

phantom.js を使用すると、次のようなことができます。

driver.Navigate().GoToUrl("http://www.grooveshark.com/");
var node = driver.FindElement(By.Id("now-playing-metadata"));
于 2013-08-21T13:48:09.547 に答える