1

I need to parse HTML file with HTML Agility Pack. Here is div with class attribute = divTableBodyText and table inside it. I need to get table's content. I created class for data but don't know how get data.

<html> <body> <div class="divTableBodyText"> <table class="tableBodyText fdff_L" cellpadding="0" cellspacing="0"> <tbody> <tr> <td> &nbsp; </td> </tr> <tr> <td> <span class="fontSize textBold">Выберите тариф.</span> Разница цен в пределах одного типа тарифа может возникнуть из-за условий выполнения рейса, связанных с колличеством пересадок и доступностью мест. Цены указаны для взрослого пассажира с учетом Сборов / Налогов. </td> </tr> <tr> <td> &nbsp; </td> </tr> </tbody> </table> <div class="FFInfoPanel"> </div> <table class="fdff_tableFF" cellspacing="0"> <tbody> <tr> <th> &nbsp; </th> <th> Тип тарифа </th> <th width="55%"> Описание тарифа </th> <th> Минимальная цена </th> <th> Другие авиарейсы </th> </tr> <tr class=""> <td style="background-color: rgb(255, 255, 255); border-right: medium none; padding: 0px 4px 0px 0px;"> &nbsp; </td> <td class="textBold" width="15%"> Special-Kazakhstan </td> <td class="wrap" id="FN_0" width="55%"> Специальный тариф экономического класса с ограничениями <a href="javascript:fareFamilyDescriptionPopUp.redirectToAnExternalPopUp('http://www.airastana.com/int/ru/Fare-Family-Special-Kazakhstan.aspx');"> Дополнительная информация</a> </td> <td style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0);" class="white" id="FRB_1_0" _isdisabled="false" width="15%"> <input id="RB0" name="FamilyButton" value="0|1" onclick="javascript:FDFF.selectRecommendationSet('0', true,'0', 'FRB_1_0',false);" checked="checked" type="radio"> 47&nbsp;917 KZT </td> <td class="white" id="FRB_2_0" _isdisabled="" width="15%"> &nbsp; </td> </tr> <tr class="bgrd"> <td style="background-color: rgb(255, 255, 255); border-right: medium none; padding: 0px 4px 0px 0px;"> &nbsp; </td> <td class="textBold" width="15%"> Flexible-Kazakhstan </td> <td class="wrap" id="FN_1" width="55%"> Специальный тариф экономического класса с возможностью бесплатного перебронирования до отправления. <a href="javascript:fareFamilyDescriptionPopUp.redirectToAnExternalPopUp('http://www.airastana.com/int/ru/Fare-Family-Flexible-Kazakhstan.aspx');"> Дополнительная информация</a> </td> <td class="white" id="FRB_1_1" _isdisabled="false" width="15%"> <input id="RB1" name="FamilyButton" value="1|1" onclick="javascript:FDFF.selectRecommendationSet('1', true,'1', 'FRB_1_1',false);" type="radio"> 52&nbsp;397 KZT </td> <td class="white" id="FRB_2_1" _isdisabled="" width="15%"> &nbsp; </td> </tr> <tr class=""> <td style="background-color: rgb(255, 255, 255); border-right: medium none; padding: 0px 4px 0px 0px;"> &nbsp; </td> <td class="textBold" width="15%"> Full flexible </td> <td class="wrap" id="FN_2" width="55%"> Нормальный тариф экономического класса без ограничений <a href="javascript:fareFamilyDescriptionPopUp.redirectToAnExternalPopUp('http://www.airastana.com/int/ru/Fare-Family-Full-Flexible.aspx');"> Дополнительная информация</a> </td> <td class="white" id="FRB_1_2" _isdisabled="false" width="15%"> <input id="RB2" name="FamilyButton" value="2|1" onclick="javascript:FDFF.selectRecommendationSet('2', true,'2', 'FRB_1_2',false);" type="radio"> 56&nbsp;267 KZT </td> <td class="white" id="FRB_2_2" _isdisabled="" width="15%"> &nbsp; </td> </tr> <tr class="bgrd"> <td style="background-color: rgb(255, 255, 255); border-right: medium none; padding: 0px 4px 0px 0px;"> &nbsp; </td> <td class="textBold" width="15%"> Business-Kazakhstan </td> <td class="wrap" id="FN_3" width="55%"> Нормальный тариф бизнес класса с некоторыми ограничениями <a href="javascript:fareFamilyDescriptionPopUp.redirectToAnExternalPopUp('http://www.airastana.com/int/ru/Fare-Family-Business-Kazakhstan.aspx');"> Дополнительная информация</a> </td> <td class="white" id="FRB_1_3" _isdisabled="false" width="15%"> <input id="RB3" name="FamilyButton" value="3|1" onclick="javascript:FDFF.selectRecommendationSet('3', true,'3', 'FRB_1_3',false);" type="radio"> 89&nbsp;557 KZT </td> <td class="white" id="FRB_2_3" _isdisabled="false" width="15%"> <input name="FamilyButton" value="4|2" onclick="javascript:FDFF.selectRecommendationSet('4', true,'3', 'FRB_2_3',false);" type="radio"> 93&nbsp;951 KZT </td> </tr> <tr class=""> <td style="background-color: rgb(255, 255, 255); border-right: medium none; padding: 0px 4px 0px 0px;"> &nbsp; </td> <td class="textBold" width="15%"> Business </td> <td class="wrap" id="FN_4" width="55%"> Нормальный тариф бизнес класса без ограничений. Почувствуйте настоящий комфорт! <a href="javascript:fareFamilyDescriptionPopUp.redirectToAnExternalPopUp('http://www.airastana.com/int/ru/Fare-Family-Business.aspx');"> Дополнительная информация</a> </td> <td class="white" id="FRB_1_4" _isdisabled="false" width="15%"> <input id="RB4" name="FamilyButton" value="5|1" onclick="javascript:FDFF.selectRecommendationSet('5', true,'4', 'FRB_1_4',false);" type="radio"> 98&nbsp;345 KZT </td> <td class="white" id="FRB_2_4" _isdisabled="" width="15%"> &nbsp; </td> </tr> </tbody> </table> </div> </body> </html> 
3
  • I'd recommend taking your example HTML and paring it down to just the relevant HTML. Commented Jun 15, 2012 at 5:51
  • i need to parse this html ang get table data Commented Jun 15, 2012 at 6:07
  • i need to parse this html ang get table data is not a question. It is more something like do it for me. Commented Jun 15, 2012 at 6:17

1 Answer 1

1

you can try somethink like this maybe it would help

 HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(//your html document); foreach (HtmlNode div in doc.DocumentNode.SelectNodes("//div[@class='divTableBodyText']")){ foreach (HtmlNode table in div.DocumentNode.SelectNodes("table")) { foreach (HtmlNode tbody in div.DocumentNode.SelectNodes("tbody")) { foreach (HtmlNode row in tbody.SelectNodes("tr")) { foreach (HtmlNode cell in row.SelectNodes("td")) { Console.WriteLine(cell.InnerText); } } } } } 
Sign up to request clarification or add additional context in comments.

3 Comments

compiler doesn't see DocumentNode in second foreachloop
is doc.DocumentNode.SelectNodes has values
Object reference not set to an instance of an object.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.