Html 민첩성 팩 + 특정 노드 얻기

asp.net c# html-agility-pack

문제

안녕하세요, 제 신청서에 문제가 있습니다. 두 노드 사이의 특정 텍스트를 골라야합니다.

html 페이지는 다음과 같습니다.

<td align="right" width="186">Text1</td>
<td align="center" width="51">? - ?</td>
<td width="186">Text2</td>`

Text1과 Text2는 다음과 같이 선택할 수 있습니다.

HtmlNodeCollection cols = doc.DocumentNode.SelectNodes("//td[@width='186']");<br />
foreach (HtmlNode col in cols)<br />
{
    if (col.InnerText == "Text1")
    {
        Label1.Text = col.InnerText;            
    }
}

내가 if-condition을 갖는 이유는 페이지에 더 많은 td가 있기 때문입니다. 그리고 특별히 "Text1"을 가진 사람을 골라 내야합니다.

하지만 문제는 어떻게 텍스트 "? -?"를 파싱 할 수있는 것입니다. 문서에 "? -?"텍스트가있는 텍스트가 더 있습니다. 하지만 내 다른 두 노드 사이의 노드를 구체적으로 골라야합니다.

결과는 Text1이어야합니까? -? 텍스트 2 등 ..

차세대 또는 형제 자매와 관련이 있다고 생각하십니까?

수락 된 답변

col.NextSibling.InnerText 를 검사 할 수 있습니다.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.