2013-11-26 2 views
1

는 요소/태그의 스타트 라인 & 열 번호엔드 라인 & 열 번호를 얻을 수있는 방법이 있나요?JSOUP HTML 파서

시작 및 끝 줄 & 열 번호으로 주어진 시나리오에 따라 속도 최적화를 위해 태그를 강조 표시해야하는 HTML 편집기를 만듭니다.

+1

Jsoup를 포크하고 원본 문서의 모든 요소의 시작 및 끝 위치를 추적합니다. 저는 열 번호와 행 번호가 없지만 어쩌면 이것이 당신을위한 시작일 수 있습니다. [here] 코드 (https://github.com/tvogels/jsoup)를 찾을 수 있습니다. – Thijs

답변

1

아니요, 유감스럽게도 현재로서는 jsoup에서 불가능합니다.

파싱 할 때 Jsoup는 줄 번호/문자 위치 을 추적하지 않으므로 추출 할 수 없습니다. 여기서는 핵심 사용 사례가 아니므로이 데이터를 유지하여 DOM의 메모리 요구 사항을 확장하고 싶지 않습니다. 나는 아마도 옵션 사이드 채널 방법을 추가하여 구문 분석 중에이를 추적하는 방법을 생각해 보았습니다. 구문 분석 오류를 추적 할 수있는 방법은 과 유사하지만 아직 구현하지 않은 채 구현했습니다.

자료 : https://groups.google.com/forum/#!topic/jsoup/lnbYSIZApWw

대신 Jericho HTML Parser을 시도 할 수 있습니다. 기능 목록에서 다음과 같이 말합니다.

소스 문서의 각 위치의 행 및 열 번호는 쉽게 액세스 할 수 있습니다. 입니다.

은 JavaDoc을 here를 참조 및 getRow(), getColumn()getRowColumnVector() 등의 방법으로 보인다.

+0

행 번호를 추적하는 다른 Java HTML 파서가 있습니까? – hiddenuser

+0

@ user2998596 [Jericho HTML Parser] (http://jericho.htmlparser.net/docs/index.html)을 살펴 보셨습니까? 기능 목록에는'소스 문서의 각 위치의 행 및 열 번호에 쉽게 액세스 할 수 있습니다. '라는 메시지가 있습니다.이 클래스에는'getRow()','getColumn()'및'getRowColumnVector()'와 같은 메소드가 있습니다. – ashatte