2012-04-16 4 views
0

ID 또는 이름이 없지만 고유 한 스타일 태그가있는 div를 HTML 문서에서 가져 오려고합니다. 여기 HtmlAgilityPack을 사용하여 요소 가져 오기

내가 뭘하려 :

if (node.OuterHtml.Contains("div")) 

그러나,이 ISN '

 foreach (HtmlNode node in myDocument.DocumentNode.DescendantNodes()) 
     { 
      if (node.OuterHtml.Contains("div")) 
      { 
       HtmlAttribute att = node.Attributes["style"]; 

       if (att != null) 
       { 

        if (att.ToString() == "font-size:16px;padding:4px 8px 0") 
        { 
         targetDiv = node; 
        } 
       } 
      } 
      } 

우선 내가 문서에있는 모든 노드, 그럼 내가 사용하는 필터링만을 div의 시도있어 실제로 div를 필터링하지만 그 안에 div이있는 태그를 선택하면됩니다. 이 작업을 수행하는 적절한 방법은 무엇입니까?

답변

2

시도 XPath는 : 그러나 주위에 약간의 독서 후,

if (node.Name == "div") 

내가 HtmlAgilityPack에 익숙하지 않다 :

var nodes = myDocument.DocumentNode.SelectNodes("//div[@style='font-size:16px;padding:4px 8px 0']") 
+0

나는'myDocument.DocumentNode.Descendants ("div")'를 사용했다. – TheGateKeeper

1

보다는

if (node.OuterHtml.Contains("div")) 

TEH Name 속성을 사용하십시오 this site이 도움이 될 수 있습니다.

+0

네,'Name'은 실제로 태그가 아닌 name 속성을 의미했습니다. 나는 마지막에'myDocument.DocumentNode.Descendants ("div")'를 사용했다. – TheGateKeeper

관련 문제