2016-12-27 16 views
1

おはよう、 ウェブサイトのテーブルからコンテンツを解析したいと思います。 ウェブサイトには、週刊上級賞のトップランキングがあります。そして、〜週刊のコマンドで、最高の20人のプレーヤーを控えたい。今の は、私は次のコードをしている:Discord ChatでHTMLテーブルのコンテンツを解析する方法は? Discord.NET C#

commands.CreateCommand("weekly") 
      .Do(async (e) => 
      { 
       WebClient webClient = new WebClient(); 
       string html = webClient.DownloadString("http://combatarms.nexon.net/de/ranking/player"); 

       HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
       doc.LoadHtml(html); 

       foreach (var cell in doc.DocumentNode.SelectNodes("//table[@class='ranking_tbl']/tr/td")) 
       { 
        await e.Channel.SendMessage(cell.InnerText); 
       } 

       // await e.Channel.SendMessage("test"); 
      }); 

は、しかし、それは私には何も示して、なぜイム間違っていないのですか? より良いことは、私は "私は最初の<tr>(#)、2番目の<tr>(名前)、そして例えば7番目<tr>(Clanname)

しかし、私は、配列が不一致にこれらのTRコンテンツ解析+で失敗:/

例えば表の1行があるが:

<table class="ranking_tbl" summary=""> 
      <colgroup> 
       <col width="80"> 
       <col width="250"> 
       <col width="100"> 
       <col width="150"> 
       <col width="100"> 
       <col width="100"> 
       <col width="280"> 
      </colgroup> 
      <thead> 
       <tr> 
        <th></th> 
        <th>Name </th> 
        <th>Rang </th> 
        <th>EP </th> 
        <th>KDR </th> 
        <th>Land </th> 
        <th>Clan- </th> 
       </tr> 
      </thead> 
      <tbody> 
       <tr> 
        <td class="cell_left">1</td> 
        <td><a href="/de/profile/player/RADICALIST">RADICALIST</a></td> 
        <td><img src="http://caimage.nexoneu.com/Rank/rank_51.gif" alt=""></td> 
        <td>5.219.130</td> 
        <td>1,46</td> 
        <td><img src="http://caimage.nexoneu.com/Web_site/Main/img/flag/SI.png" alt=""></td> 
        <td><a href="/de/clan/profile/Jasmine%20Thompson">Jasmine Thompson</a></td> 
       </tr> 
+0

をダウンロードしたテキストが​​値が含まれていません。 html変数の内容を見て、​​と表示されます。 –

+0

td属性があります:/ – xKushGene

+0

しかし、それらは空です! ​​ ​​ ​​ ​​ ​​ ​​ –

答えて

1

Iは、テーブルの内容を考えます動的に生成され、ページ内のいくつかのjavascriptコードによって生成されますが、この動的コンテンツは、 rドキュメントが読み込まれます。 ページをダウンロードすると、すべてのコンテンツを取得することはできません。
あなたはここでそれについての詳細を読むことができます:
htmlagilitypack and dynamic content issue
webclient doesn't download the web page completely
Load dynamically generated HTML Code in WebClient
How to extract dynamic ajax content from a web page
Scraping data dynamically generated by JavaScript in html document using C#

関連する問題