HtmlAgilityPack의 디자인 결정이 마음에 들지 않습니다.
SelectNodes
더 노드가 발견되지 않으면, 그것은 반환 null
그냥 할 수 있도록, 오히려 빈 세트보다 foreach
널 체크하지 않고 그 위에. node.SelectNodes
를 사용하여 자식을 선택하려고하면 descendant::
을 사용하지 않는 한 실제로 문서 루트에서 검색합니다. descendant::
이것은 명백하거나 예상되는 동작이 아닙니다. IMO. HtmlDocument.Load
는 루트 노드를 반환하지 않습니다. 이는 99 %의 시간을 원한다고 생각합니다. 물론 그 점에 동의하지 않을 수도 있지만, 그 점은 중요하지 않습니다. 나는 다른 것을 찾고 있어요. 조금 더 기대되는 것, 또는 jQuery 구문을 사용하는 것이 훨씬 더 좋을 것입니다. 제안?
SharpQuery 라는 프로젝트 시작
현재 ID, 클래스, 태그 및 속성 선택자를 지원합니다.
a
a[href]
a[href^=http://stackoverflow.com]
.class
#id
업데이트 : 나는이 프로젝트를 유지하고 있지 않다. 미안하다. CsQuery 에는 2013 년 7 월 현재의 최신 업데이트가 있지만 사용 경험이 없습니다.