0

ここからデータをスクレイピングしようとしています http://www.forexfactory.com/calendar.php

これが私のコードです

        var parser = new HtmlDocument();
        parser.LoadHtml(html);

        var datas = parser.DocumentNode.SelectNodes("//tr/@data-eventid");

html上記のリンクから読み込まれる場所。

問題は、取得されたノードが一貫していないことです。デバッガーでは、14 個のノードのみが返され、その他は何らかのエラーです ( として出力されます?)。ただし、QuickWatch ウィンドウでは、すべてのノードが返されます。なぜこれが起こっているのかよくわかりません。

Chrome コンソールを使用しても、すべてのノードを取得するので、マークアップは正しいです。$x("//tr/@data-eventid")クロムコンソールで。

よくない わかった

4

1 に答える 1

0

表示されるのはデバッガー固有の動作です。ほとんどの場合、データ自体は問題ありません。

デバッガーには、多少高速に保つために多くの「ランダムな」制限があり (列挙の自動展開がないなど)、さまざまなウィンドウ (即時、監視、ローカル、ホバーオーバーなど) にもさまざまな制限がある可能性があります。

特定のデバッグ ウィンドウに満足できない場合は、他のウィンドウを試すか (つまり、この場合は Watch が機能しているように見えます)、独自のビジュアライザーを作成します。

于 2013-07-27T02:25:45.443 に答える