1

htmlparsing でエラーが発生しました。問題は引用符に起因すると思います DjNative language=javascript error language="javascript" Dj ネイティブ ライブラリのすべてのバージョンを試します

[致命的なエラー] :2:18: 要素タイプ「language」に関連付けられた属性「{1}」には、開始引用符が必要です。org.xml.sax.SAXParseException; 行番号: 2; 列番号: 18; 要素タイプ「language」に関連付けられた属性「{1}」には、開始引用符が必要です。com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(不明なソース) com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(不明なソース)

  private Document HTMLtoXML(String source)
 {
 Document doc = null;
     DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
     DocumentBuilder builder;
     try {
         builder = factory.newDocumentBuilder();
         InputSource src = new InputSource(new StringReader(source));
         doc = builder.parse(src);
     } catch (ParserConfigurationException e) {
         e.printStackTrace();
     } catch (SAXException e) {
        e.printStackTrace();
     } catch (IOException e) {
        e.printStackTrace();
     }
 return doc;  
 }

 public void StartTakip()
{   
  String htmlSource=webbrowser.getHTMLContent();
  dc = HTMLtoXML(htmlSource);   

 }

DJNative Swing を介してページのソース コードを HTML ページに取得しようとすると、

<HTML>
<HEAD>
<SCRIPT language=javascript src="/medula/scripts/capFirstLetters.js"></SCRIPT>
<TITLE>deneme</TITLE>
</HEAD>
<BODY bgcolor=#233333>
</BODY>
</HTML>

以下のようなソースの場合、html パースはうまく機能します

<HTML>
<HEAD>
<SCRIPT language="javascript" src="/medula/scripts/capFirstLetters.js"></SCRIPT>
<TITLE>deneme</TITLE>
</HEAD>
<BODY bgcolor="#233333">
</BODY>
</HTML> 
4

1 に答える 1

0

この問題を Jsoup-1.7.3.jar Ex で解決します。

  JWebBrowser jwebbrowser=new Jwebbrowser();
  Document doc=Jsoup.parse(jwebbrowser.getHTMLContent);
于 2014-01-06T16:38:00.827 に答える