HTMLAgilityPack을 사용하여 원하는 값을 추출하는 방법은 무엇입니까?

c# html-agility-pack html-parsing

문제

주어진 HTML에 대해 나는 id 값을 원한다.

 <div class="name" id="john-5745844">
 <div class="name" id="james-6940673">

업데이트 이것은 내가 지금 가지고있는 것입니다.

    HtmlDocument htmlDoc = new HtmlDocument();
    htmlDoc.Load(new StringReader(pageResponse));
    HtmlNode root = htmlDoc.DocumentNode;

    List<string> anchorTags = new List<string>();
    foreach (HtmlNode div in root.SelectNodes("//div[@class='name' and @id]"))
    {
        HtmlAttribute att = div.Attributes["id"];
        Console.WriteLine(att.Value);
    }

내가 얻는 오류는 foreach 줄에 다음과 같이 명시되어 있습니다. Object reference not set to an instance of an object. 나는이 부분이 잘못되었다고 생각한다 "//div[@class='name' and @id]"

수락 된 답변

예제 페이지에서 수정 됨 :

HtmlDocument doc = new HtmlDocument();
doc.Load("file.htm"); //or whatever HTML file you have
foreach(HtmlNode div in doc.DocumentNode.SelectNodes("//div[@class='name' and @id]")
{
   HtmlAttribute att = div["id"];
   //Do something with att.Value
}


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