HTMLAgility pack C # незакрытый тег colgroup

У меня есть строка (HTML), отправляемая на сервер, а затем она проверяется с помощью пакета HTMLAgility. В HTML есть незакрытый тег colgroup.

После очистки появляется закрывающий тег colgroup, но прямо между закрывающим тегом "tbody" и "table".

BEFORE:

<table width="3265" class="mce-item-table" style="width: 2452pt; border-collapse: collapse;" border="0" cellspacing="0" cellpadding="0">

 <colgroup><col width="80" style="width: 60pt;">
 <col width="245" style="width: 184pt;" span="13"> <!-- MISSING COLGROUP tag-->
 <tbody><tr height="20" style="height: 15pt;">
  <td width="80" height="20" style="width: 60pt; height: 15pt; color: blue; text-decoration: underline; text-underline-style: single;"><span style="color: blue;">31109173</span></td>
  <td width="245" style="width: 184pt; font-family: Arial; font-size: 9pt;">31109173</td>
  <td width="245" align="right" style="width: 184pt; font-family: Arial; font-size: 9pt;">May 09,2017 9:54 AM</td>
  <td width="245" align="right" style="width: 184pt; font-family: Arial; font-size: 9pt;">May 08,2017 5:21 PM</td>
 </tr>
 <tr height="20" style="height: 15pt;">
  <td height="20" style="height: 15pt; color: blue; text-decoration: underline; text-underline-style: single;"><span style="color: blue;">30933775</span></td>
  <td style="font-family: Arial; font-size: 9pt;">30933775</td>
  <td align="right" style="font-family: Arial; font-size: 9pt;">May 09,2017 9:50 AM</td>
  <td align="right" style="font-family: Arial; font-size: 9pt;">Apr 28,2017 6:22 PM</td>
 </tr>
</tbody></table>

ПОСЛЕ:

<table width="3265" class="mce-item-table" style="width: 2452pt; border-collapse: collapse;" border="0" cellspacing="0" cellpadding="0">

 <colgroup><col width="80" style="width: 60pt;">
 <col width="245" style="width: 184pt;" span="13">
 <tbody><tr height="20" style="height: 15pt;">
  <td width="80" height="20" style="width: 60pt; height: 15pt; color: blue; text-decoration: underline; text-underline-style: single;"><span style="color: blue;">31109173</span></td>
  <td width="245" style="width: 184pt; font-family: Arial; font-size: 9pt;">31109173</td>
  <td width="245" align="right" style="width: 184pt; font-family: Arial; font-size: 9pt;">May 09,2017 9:54 AM</td>
  <td width="245" align="right" style="width: 184pt; font-family: Arial; font-size: 9pt;">May 08,2017 5:21 PM</td>
 </tr>
 <tr height="20" style="height: 15pt;">
  <td height="20" style="height: 15pt; color: blue; text-decoration: underline; text-underline-style: single;"><span style="color: blue;">30933775</span></td>
  <td style="font-family: Arial; font-size: 9pt;">30933775</td>
  <td align="right" style="font-family: Arial; font-size: 9pt;">May 09,2017 9:50 AM</td>
  <td align="right" style="font-family: Arial; font-size: 9pt;">Apr 28,2017 6:22 PM</td>
 </tr>
</tbody></colgroup></table>

<!-- ^^ </colgroup> has appeared above-->

Я попытался установить для флага OptionFixNestedTags значение true. Я до сих пор получаю тот же результат.


person Ajinkya    schedule 08.06.2017    source источник


Ответы (1)


Я пробовал различные варианты из пакета HTMLAgility и устанавливал их как истинные. Это не сработало.

OptionFixNestedTags = true;
OptionAutoCloseOnEnd = true;

Есть хороший пакет Nuget, который очищает html. Проблема, с которой я столкнулся, была решена здесь -> HtmlSanitizer

Надеюсь это поможет.

person Ajinkya    schedule 16.06.2017