열 데이터가 주어진 테이블의 행에서 값을 반환하는 HtmlAgilityPack 메서드

c# html-agility-pack

문제

나는 html 민첩성 팩을 사용하여 내부 html 정보를 추출하기 위해 테이블의 주어진 행에서 다른 td와의 상대 거리를 기반으로합니다.

예를 들어 아래 코드에서 첫 번째 td 태그의 데이터를 입력으로 사용하고 세 번째 td 태그의 데이터를 출력으로 제공하는 효율적인 동적 명령은 무엇입니까?

<tbody>
    <tr>
        <td>Smith</td>
        <td>Glasnevin</td>
        <td>11</td>
        <td>6.0</td>
    </tr>
    <tr>
        <td>Harty</td>
        <td>Blackrock</td>
        <td>11</td>
        <td>6.0</td>
    </tr>
    <tr>
        <td>Power</td>
        <td>Salthill</td>
        <td>0</td>
        <td>5.8</td>
    </tr>
</tbody>

따라서 'Smith'를 입력으로 사용하면 '11'을 출력으로 사용하거나 'Power'를 입력으로 사용하면 출력으로 '0'을 얻을 수 있습니다.

수락 된 답변

다음은 그 예입니다.

HtmlDocument doc = new HtmlDocument();
//load your HTML to `doc`
var result = doc.DocumentNode
                .SelectSingleNode("//tr[td[1]='Power']/td[3]")
                .InnerText;
//at this point `result` hold value of 0

XPath는 첫 번째 자식 노드 <td> "Power" 와 동일한 <tr> 노드를 선택한 다음 앞서 언급 한 <tr> 에서 세 번째 <td> 를 가져 오는 것을 의미합니다.




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