본문 바로가기
programming

xpath 란 구조화된 웹페이지의 내용을 검색하고 데이터를 추출하는 쿼리

by 개코 - 개발과 코딩 2022. 7. 27.

xpath는 xml 문서를 탐색하여 데이터를 추출하는 쿼리문으로 지금은 html문서의 내용을 추출할때도 사용한다. 구조화된 웹페이지의 데이터를 검색하는데 자주 사용된다. 과거에는 xml을 이용한 수신된 데이터를 파싱하여 데이터를 추출하는데 자주 되기도 하였다. 지금은 구조화된 웹페이지의 데이터를 파싱하고 검출하는데 자주 사용된다.

xpath 란 구조화된 웹페이지의 내용을 검색하고 데이터를 추출하는 쿼리

xpath는 xml의 노드를 찾고 내용을 검색하여 추출하는 쿼리문이다.

지금은 html의 구조화된 문서의 내용을 검색하고 추출하는데 사용된다.

과거 xml이 많이 사용되더 시절 xml의 내용을 추출하고 데이터를 전송하고 가공하는데 자주 사용되었다.

지금은 크롤링이나 스크래핑에 자주 사용되기도 하는데, 무분별하게 사용하는 경우 불이익을 받을 수 있다.

결론적으로 xpath는 구조화된 웹데이터를 검색하고 데이터를 추출하는데 사용되는 쿼리문이다.

xpath xml 문서를 탐색하는 쿼리문

xpath 에 대한 내용을 찾아보면 XML 문서와 RSS에 대한 내용을 먼저 찾을 수 있다.

xpath란 XML 문서를 탐색하고 데이터를 추출하는 노드 경로를 찾는 쿼리문이다.

노드는 꺽쇠괄호인 < 와 > 를 가진 html의 태그와 같은 형태를 가진다.

xml 은 지금도 자주 사용되고 있는데 json 데이터전송 방식이 발전하면서 rss나 내부 데이터 관리 등을 제외하면 자주 사용되지 않느다.

다만 xpath 는 지금에 와서 파이썬과 더불어 자주 사용되는데 html 웹페이지의 데이터를 검색하는데 사용된다.

크롤링이나 스크래핑을 조금이라도 공부한 사람이라면 특정 html 의 태그에 있는 데이터를 검출하기 위해 xpath를 사용해 봤을 것이다.

xpath를 이용한 데이터 찾기

웹브라우저의 개발자모드를 사용하면 특정 태그의 xpath를 찾을 수 있다.

개발자모드를 사용하면 웹페이지를 구성하는데 디버그부터 많은 정보를 찾을 수 있지만, 남용은 금물이다.

포털의 경우 xpath를 이용한 데이터 검출에 대해 일부 금지하는 것을 공지하고 있기도 하다.

구글의 경우 데이터 검출을 막기 위해 일부 데이터를 암호화하기도 한다.

일단 외국의 특정 웹사이트의 xpath가 어떻게 사용되는지 보자.

cnn 페이지를 예로 들어 본다.

1. cnn 페이지 접속하기

cnn 페이지를 접속하면 여러가지 기사내용이 나온다.

아래의 빨간 네모박스의 내용의 xpath를 찾는 방법은 개발자모드를 이용하여 찾아볼 수 있다.

개발자모드는 F12 를 이용하여 열어 볼 수 있다.

Elements 탭을 클릭하고 화살표 아이콘을 클릭하여 html 태그 요소들을 마우스를 갖다대면 빨간 네모 박스와 같은 위치를 탐색할 수 있다.

2. xpath 복사하기

노드를 찾았다면 우측의 점 세개를 마우스로 클릭한다.

Copy 메뉴을 찾을 수 있고, 이것을 클릭하자.

Copy xpath 와 Copy Full xpath 가 있다.

어느 것을 선택해도 상과없다.

3. 복사한 xpath 검사하기

Element 요소에서 Ctrl + F 를 누르면 검색창이 작게 나타난다.

이곳에 복사된 내용을 붙여넣자

이상한 문자들이 나오는데 이것이 xpath 이다.

이것을 검색항목에 붙여넣기 한후 엔터키를 누르면 html 요소를 검색하게 될 것이고 개발자모드에서 녹색 박스로 표시가 된다.

이것으로 xpath를 검사할 수 있다.

반응형

댓글