답변
다음과 유사해야합니다.
// a [text () = 'text_i_want_to_find'] / @ href
답변
당신에게는 너무 늦었지만 같은 질문을 가진 다른 사람에게는 …
//a[contains(text(), 'programming')]/@href
물론 ‘프로그래밍’은 모든 텍스트 조각이 될 수 있습니다.
답변
//a[text()='programming quesions site']/@href
기본적으로 <a>
원하는 텍스트가 있는 앵커 노드 를 식별 하고 href
속성을 추출 합니다.
답변
대괄호 안의 구를 SQL의 WHERE 절로 생각하십시오.
따라서이 쿼리는 “어디에나 표시되는”a “태그의”href “속성 (@)을 선택합니다 (//), 그러나”a “태그의 텍스트 내용이 ‘ 프로그래밍 질문 사이트 ‘ “.
답변
대소 문자를 구분하지 않는 포함의 경우 다음을 사용하십시오.
//a[contains(translate(text(),'PROGRAMMING','programming'), 'programming')]/@href
translate는 PROGRAMMING의 대문자를 소문자 프로그래밍으로 변환합니다.
답변
html 민첩성 팩을 사용하는 경우 getattributeValue를 사용하십시오.
$doc2.DocumentNode.SelectNodes("//div[@class='className']/div[@class='InternalClass']/a[@class='InternalClass']").GetAttributeValue("href","")