2009-03-23 6 views

답변

1

이 내가 정확히 무엇을 달성하는 데 사용되는 코드입니다 당신 '

다음에 의해 반환 된 노드 목록을 통해 XPath를 사용하여 반복 처음에는 몇 가지 팁을 드리겠습니다.

Java Swing 환경에있는 경우 javax.swing.text.html 및 javax.swing.text.html.parser 패키지의 메소드를 사용해야합니다. 불행하게도, 대부분 JEditorPane에서 사용하기위한 것이지만 여전히 이들을 살펴 보는 것이 좋습니다.

HTML 시작 태그와 종료 태그를 식별하는 클래스 인 Java 6 API에는 HTML.Tag가 있습니다.이 태그를 사용하여 프로그램 링크를 원하는 위치를 결정할 수 있습니다. 당신이 내게 메시지를 수,

public void handleStartTag(HTML.Tag t, MUtableAttributeSet atts, int pos) 
public void handleEndTag(HTML.Tag t, int pos) 
public void handleText(char[] text, int pos) 

이러한 방법을 작성하는 방법에 대한 자세한 도움이 필요하면하지만 기본적으로, 당신은 :이 매우 유사한 프로그램을 작성하는 경우 http://java.sun.com/javase/6/docs/api/javax/swing/text/html/HTML.Tag.html

, 나는 3 가지 주요 방법을 사용 초기 태그와 종료 태그를 찾고 나서 URL을 식별 한 다음 URL을 따르는 다음 단계로 진행할 수 있습니다.

URL을 따라 가려면 JEditorPane 개체를 사용하는 것이 좋습니다. javax.swing.event.HyperlinkListener 인터페이스는 URL을 전달한 다음 JEditorPane 객체에서 .setPage (evt.getURL())를 호출 할 수있는 hyperlinkUpdate (HyperlinkEvent e) 메서드를 하나만 정의합니다. 이렇게하면 새 페이지로 창을 업데이트하고 프로세스를 다시 시작할 수 있습니다.

당신은 어떤 probs가 있으면이 대답을 투표하십시오!

2

일회성 편집 작업으로 하시겠습니까? 체계적인 (코드) 구현이 필요합니까? 두 번째 경우에는 Java HTML 구문 분석기 구현을 찾고 DOM 트리를 살펴보십시오. 파일이 XHTML 문서 경우

http://java-source.net/open-source/html-parsers

+0

일부 Java 코드를 사용하여이 작업을 수행해야합니다. –

+0

http://www.benmccann.com/dev-blog/java-html-parsing-library-comparison/ – trunkc

0

, 그것은 표준 XML 문서와는 jdom를 사용하는 구문 분석하는 인피 방법입니다. JDom은 매우 강력하고 사용하기 쉽고 이해하기 쉽습니다.

html 문서가있는 경우 htmlparser, 즉 LinkTag 클래스를 사용해보십시오.

0

했다. 일단로드되면 getElementBy를 사용하여 노드로 이동하거나 값을 얻을 수 있습니다.

0

모든 HTML 문서, 심지어 대부분의 비 호환 문서에서 DOM 트리를 빌드하는 tagsoup을 살펴볼 것입니다.

//

// IMG

0

Neko HTML Parser을 (화면 스크래핑) 이런 종류의 작업에 성공적으로 사용했습니다.

 
import org.cyberneko.html.parsers.DOMParser; 
import org.w3c.dom.Node; 

public class TestParser { 

    public static void main(String[] argv) throws Exception { 
      DOMParser parser = new DOMParser(); 
      for (int i = 0; i
관련 문제