2011-08-12 11 views
1

Jsoup.parse(String html)が機能しなくなりました。私はいくつかの時間をjsoupを使って別のページを解析するときにアプリケーションを持っていますが、大きなページを解析したいときにjsoupが停止するだけです。それはページの制限または最大サイズを持っていますか?JsoupがWebページの解析を停止します

java.lang.OutOfMemoryError 
at java.lang.Object.internalClone(Native Method) 
at java.lang.Object.clone(Object.java:82) 
at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:172) 
at java.lang.StringBuilder.append(StringBuilder.java:224) 
at org.jsoup.parser.Tokeniser.emit(Tokeniser.java:76) 
at org.jsoup.parser.TokeniserState$1.read(TokeniserState.java:26) 
at org.jsoup.parser.Tokeniser.read(Tokeniser.java:42) 
at org.jsoup.parser.TreeBuilder.runParser(TreeBuilder.java:101) 
at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:53) 
at org.jsoup.parser.Parser.parse(Parser.java:24) 
at org.jsoup.Jsoup.parse(Jsoup.java:44) 
... 

EDIT: 私はいくつかの千最初の文字のためのページの部分文字列を取り、それはそれを解析することができました。 それで、Jsoupには管理できる文字の制限があるようです。恐らくデータ型のタイプが重要です。

EDIT:EDIT: エラー何ができるかについて少し分析し、ストレスの多くにつながった私自身のHTMLパーサを、書き込もうとした後、私は、のDalvik VMは4しか割り当てられていることが分かりました、私はPCへ、PCと異なっていると仮定し、ヒープ上の3メガバイト..ゴナそれを高めるためにしようと...

+0

はあなたが呼び出し、その後のHttpClientのような別の方法でページ内容を取得してみてくださいAndroidでこの問題に直面していますか?はいの場合は、なぜAndroidタグを含めなかったのですか?あなたはたぶんあなた自身がもっと多くの返事を受け取ったでしょう... –

+0

@SYLARRRおそらくそれを含むのを忘れてしまいました。まあ、JsoupはJavaライブラリなので、Android開発よりも一般的なので、Androidのタグを追加すればもっと多くの開発者にこの質問をターゲットにしていたはずです私はここで、Androidの環境の問題について議論しているので、私はAndroidのタグを含めることになります:) –

+0

あなたが言うことをしようとしているヒープの限界は何ですか? 4,3MBまたは4.3MB私は分かりません。 – Enigma

答えて

0

Jsoup.parse(String html); 
関連する問題