Html 민첩성 팩 C # : 표현식은 노드 집합으로 평가되어야합니다.

c# html-agility-pack web-scraping

문제

웹 페이지를 가져 오기 위해 Html Agility Pack을 사용하고 있습니다. 다음 양식 중 내가 찾고있는 모든 텍스트를 수집하려고합니다.

<li><a href="/deal/map/4087664" class="show-location" title="bla bla" data-address="TEXT I AM LOOKING FOR"></a></li>

이 코드를 시도 :

var web = new HtmlWeb();
var doc = web.Load(url);

var nodes1 = doc.DocumentNode.SelectNodes("//[@data-address]");
var nodes2 = doc.DocumentNode.SelectNodes("//[@data-address={0}]");

두 가지 모두 예외를 던졌습니다. 표현식은 노드 집합으로 평가되어야합니다. 선택기를 수정하려면 어떻게해야합니까?

수락 된 답변

XPath 전문가는 아니지만 원하는 것은 무엇입니까?

// Note the *
var nodes1 = doc.DocumentNode.SelectNodes("//*[@data-address]");

즉, " data-address 속성을 가진 모든 요소"



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