DocumentElement.SelectNodes는 null을 반환합니다 (Html ​​Agility Pack).

c# html-agility-pack

문제

html로 된 테이블을 파싱 할 필요가 있습니다.

<html>
<head>
  <title>
  </title>
</head>
<body>
  <table>
  ***contents***
  </table>
</body>
</html>

내 코드는 다음과 같습니다.

<html>
<head>
  <title>
  </title>
</head>
<body>
  <table>
  ***contents***
  </table>
</body>
</html>

하지만 다음 NullReferenceException 얻을

<html>
<head>
  <title>
  </title>
</head>
<body>
  <table>
  ***contents***
  </table>
</body>
</html>

그래서 테이블에는 그 안에 아무 것도 없지만 왜 그럴까요?

수락 된 답변

나는 그것을 고쳤다. 문제는 LoadHtml 메서드로, html 문자열을 매개 변수로 사용합니다. 파일의 경우 로드 가 사용되어야합니다.


인기 답변

HTML에 tr의 테이블 행이 없으므로 민첩성 팩은 아무 것도 찾지 못합니다.

 try this 
            // Get all tables in the document
            HtmlNodeCollection tables = doc.DocumentNode.SelectNodes("//table");

            // Iterate all rows in the first table
            HtmlNodeCollection rows = tables[0].SelectNodes(".//tr");
            for (int i = 0; i < rows.Count; ++i)
            {


            }



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