본문 바로가기
반응형

HtmlAgilityPack2

.NET - HtmlAgilityPack SelectNodes에서 다중 클래스 찾기 contains 요즘 HTML 을 가지고 자동화를 하고자 한다면, HtmlAgilityPack이 .Net에서는 많이 사용된다. 클래스를 찾는 방법으로, 단순한 구조의 html이라면 괜찮지만 조금 복잡하게 여러개의 class가 선언 된 경우 효과적으로 사용할 수 있는 contains에 대해 짧게 정리해 본다. 먼저 HtmlAgilityPack 에서 노드를 찾는 기능은, SelectNodes로 가능하다. SelectNodes 그리고 기본적으로 검색 방법은 Xpath 방식을 이용하는데, 앞서 구분자 a, div 등 꺽쇠를 제외한 구분자와 내부 검색하고자 하는 Key와 Value를 지정해주면 된다. 기본적으로 아래와 같은 조건으로 사용할 수 있다. # body가 들어간 노드 찾기 var body = html.DocumentNo.. 2022. 11. 11.
.NET - HTML 특정 문자열 추출, DocumentNode.SelectNodes 검색하기 HTML에서 원하는 값을 가져오고 싶을때, 보통 class로 지정된 CSS기준으로 가져올 수 있다. 만약 아래와 같이 Github의 특정 문자열을 가져오고 싶다면, 브라우저의 개발자 도구(F12키) 열어서, Elements 에서 해당하는 스타일을 검색한다. 그리고 아래 그림처럼 왼쪽 말풍선에 나온 내용 참고하여, CSS 구문을 포함해서 SelectNodes 값을 지정해주면 된다. 위 div아래와 같이 코드를 작성해서 가져올 수 있다. using HtmlAgilityPack; using System; using System.Net.Http; using System.Threading.Tasks; namespace console_html { class Program { static async Task Main.. 2022. 4. 5.
반응형