XPath 테스터

XML 또는 HTML에 대해 XPath 표현식을 테스트하고 매칭되는 노드, 값 및 경로를 검사하세요.

입력 유형
XML / HTML 입력
결과 목록
테스트할 XML 또는 HTML과 XPath 표현식을 입력하세요.

XML, HTML 및 XPath 테스트는 브라우저 내에서 수행됩니다. BroBroGo로 아무것도 업로드되지 않습니다.

자주 묻는 질문

XML뿐만 아니라 HTML에 대해서도 XPath를 테스트할 수 있나요?

네, 가능합니다. XML 모드는 엄격한 XML 네임스페이스 규칙을 유지합니다. HTML 모드는 보다 유연하게 작동하여 //a와 같은 단순한 경로가 일반 태그에 매칭되도록 허용합니다.

XML 네임스페이스는 어떻게 작동하나요?

XML에 선언된 네임스페이스 접두사를 //x:item과 같이 XPath 내에서 사용할 수 있습니다. 기본 네임스페이스의 경우 //item 역시 문서 선언을 따릅니다.

쿼리가 타임아웃되는 이유는 무엇인가요?

매우 큰 문서나 광범위한 표현식은 평가하는 데 많은 리소스가 소모될 수 있습니다. 이 도구는 페이지 반응성을 유지하기 위해 2초 후에 실행을 중단하므로, 경로를 좁히거나 더 작은 샘플을 사용해 보세요.

XPath 테스터의 기능과 작동 원리

XPath 테스터는 사용자가 제공한 XML 또는 HTML 콘텐츠를 대상으로 XPath 표현식을 입력하고 테스트할 수 있는 도구입니다. 이 도구는 입력한 표현식과 매칭되는 콘텐츠의 모든 부분을 찾아내어, 각 매칭 노드의 타입, 이름, 경로 및 값의 미리보기를 화면에 표시합니다. 사용자는 개별 결과 옆에 제공되는 '결과 복사' 버튼을 사용하여 해당 매칭 값을 즉시 클립보드에 복사할 수 있습니다.

이 도구는 브라우저 내에서 직접 데이터를 처리하므로, 입력한 XML, HTML 및 XPath 표현식은 외부 서버로 전송되지 않고 사용자의 기기 내에서만 안전하게 테스트됩니다. BroBroGo로 아무것도 업로드되지 않습니다.


입력 및 출력 규격

도구를 올바르게 사용하기 위해서는 다음과 같은 입력 제한 사항과 출력 항목을 확인해야 합니다.

입력 제한 사항

  • XML / HTML 입력: XML 또는 HTML 형식의 텍스트 콘텐츠를 입력합니다. 입력 가능한 최대 길이는 500,000자입니다.
  • XPath 표현식: 테스트하고자 하는 XPath 경로를 입력합니다. 입력 가능한 최대 길이는 4,000자입니다.
  • 입력 유형: 문서의 특성에 맞게 'XML' 또는 'HTML' 모드 중 하나를 선택할 수 있습니다.

출력 정보 및 통계

  • 결과 목록: 매칭된 노드의 총 개수가 표시되며, 각 노드의 타입, 이름, 경로, 미리보기가 상세히 제공됩니다.
  • 글자 수: 입력한 문서의 전체 글자 수가 화면에 표시됩니다.
  • 결과 수: 현재 화면에 출력된 결과의 개수를 나타냅니다.

XML 모드와 HTML 모드의 차이점

XPath 테스터는 입력하는 문서의 구조적 특징에 맞춰 두 가지 입력 유형을 제공합니다.

  • XML 모드: 엄격한 XML 규격을 따르며, XML 네임스페이스 규칙이 철저하게 적용됩니다. XML 문서 내에 선언된 네임스페이스 접두사가 있다면 XPath 표현식 내에서 //x:item과 같은 형태로 사용할 수 있습니다. 또한 기본 네임스페이스가 정의된 경우, //item 표현식 역시 문서의 선언을 그대로 따릅니다.
  • HTML 모드: 웹 페이지 분석에 적합하도록 보다 유연하고 관대한 파싱 규칙을 적용합니다. 복잡한 네임스페이스 선언 없이도 //a와 같은 단순한 경로를 사용하여 일반적인 HTML 태그를 직관적으로 매칭할 수 있습니다.

오류 메시지 및 예외 처리 규칙

도구 사용 중 발생할 수 있는 제한 사항이나 입력 오류에 대해 시스템은 다음과 같은 규칙에 따라 특정 안내 메시지를 출력합니다.

  • 문서 크기 초과: 입력한 XML 또는 HTML 문서가 500,000자를 초과하여 너무 큰 경우, "이 문서가 너무 커서 여기서 테스트할 수 없습니다. 더 작은 샘플을 사용해 주세요."라는 메시지가 표시됩니다.
  • 표현식 길이 초과: 입력한 XPath 표현식이 4,000자를 초과하는 경우, "이 XPath 표현식은 여기서 테스트하기에 너무 깁니다."라는 메시지가 나타납니다.
  • 파싱 실패: 입력된 문서의 형식이 잘못되어 읽을 수 없을 때는 "문서를 파싱할 수 없습니다."라는 오류가 발생합니다.
  • 잘못된 표현식: 입력한 XPath 구문에 문법적 오류가 있는 경우 "유효하지 않은 XPath 표현식입니다."라는 메시지가 출력됩니다.
  • 평가 불가능: 구문은 유효하나 문서 구조상 평가를 진행할 수 없는 상황에서는 "이 XPath를 평가할 수 없습니다."라는 메시지가 표시됩니다.
  • 실행 시간 초과: 브라우저의 반응성을 유지하기 위해, XPath 표현식 평가가 2초 이상 지속되면 실행이 자동으로 중단되며 "이 XPath 실행 시간이 너무 오래 걸립니다. 표현식을 좁히거나 더 작은 샘플을 사용해 주세요."라는 메시지가 나타납니다.
  • 매칭 결과 없음: 문서 내에서 일치하는 요소를 찾지 못했을 때는 "결과가 없습니다."라고 표시됩니다.
  • 결과 제한: 매칭된 결과가 200개를 초과하는 경우, 도구는 "처음 {max}개만 표시 중입니다."라는 안내와 함께 상위 200개의 결과만 화면에 출력합니다.

웹 페이지 테스트 시 주의사항

이 도구는 사용자가 직접 입력 창에 붙여넣은 정적 텍스트 콘텐츠만을 대상으로 XPath를 평가합니다. 따라서 실제 운영 중인 라이브 웹 페이지의 실시간 구조 변화, 브라우저에서 동적으로 렌더링된 DOM(Document Object Model), 또는 페이지 로드 시 발생하는 네트워크 요청 등은 반영하지 않습니다. 동적 웹 페이지를 분석할 때는 대상 페이지의 소스 코드를 직접 복사하여 입력 창에 붙여넣은 후 테스트해야 합니다.


자주 묻는 질문 (FAQ)

Q. XML뿐만 아니라 HTML에 대해서도 XPath를 테스트할 수 있나요?
A. 네, 가능합니다. XML 모드는 엄격한 XML 네임스페이스 규칙을 유지합니다. HTML 모드는 보다 유연하게 작동하여 //a와 같은 단순한 경로가 일반 태그에 매칭되도록 허용합니다.

Q. XML 네임스페이스는 어떻게 작동하나요?
A. XML에 선언된 네임스페이스 접두사를 //x:item과 같이 XPath 내에서 사용할 수 있습니다. 기본 네임스페이스의 경우 //item 역시 문서 선언을 따릅니다.

Q. 쿼리가 타임아웃되는 이유는 무엇인가요?
A. 매우 큰 문서나 광범위한 표현식은 평가하는 데 많은 리소스가 소모될 수 있습니다. 이 도구는 페이지 반응성을 유지하기 위해 2초 후에 실행을 중단하므로, 경로를 좁히거나 더 작은 샘플을 사용해 보세요.