このコードでは、URLで指定されたWebサイトのhtmlコードを解析しようとしています。WebサイトのHTMLコードの解析:htmlunit.javascript.StrictErrorReporter runtimeError
私は最初にjsoup.connect.get
を試しましたが、ドキュメントに読み込まれていたhtmlコードがブラウザで見られたものではありませんでした。その後、私はjsoupがjavascript/ajaxベースのページのHTMLコードを完全に取り出すことができないというnetで与えられたフィードバックに基づいてhtmlunitを使い始めました。 Javaへの新しい
Nov 05, 2017 12:40:15 AM com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError SEVERE: runtimeError: message=[Exceeded maximum stack depth] sourceName=[script in http://www.dspblackrock.com/about-us/mandatory-disclosure/month-end-portfolio-disclosures from (8, 9) to (26, 10)] line=[22] lineSource=[null] lineOffset=[0] Nov 05, 2017 12:40:15 AM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify WARNING: Obsolete content type encountered: 'text/javascript'. Nov 05, 2017 12:40:15 AM com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError SEVERE: runtimeError: message=[Exceeded maximum stack depth] sourceName=[ http://www.dspblackrock.com/TSPD/08ca5204faab20006bf1735bede287affd051075f25a20bf70034ef55ad0ac427b287aacb10e6976?type=7] line=[70] lineSource=[null] lineOffset=[0]
アム:私はhtmlunitパッケージとそのWebClient
クラスを使用すると、私は次のエラーを取得しています。まず、問題に適切な方法でhtmlUnitを使用していますか?上記のエラーを解決するにはどうすればよいですか?
import java.io.*;
import java.net.*;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.parser.Parser;
import org.jsoup.nodes.Document;
import org.apache.commons.validator.routines.UrlValidator;
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
public class URLToFile {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Hello World!");
String url;
UrlValidator urlValidator = new UrlValidator();
try {
url = "http://www.dspblackrock.com/about-us/mandatory-disclosure/month-end-portfolio-disclosures";
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_52);
webClient.getOptions().setJavaScriptEnabled(true);
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
HtmlPage myPage = webClient.getPage(url);
webClient.close();
Document doc = Jsoup.parse(myPage.asXml());
System.out.println(doc);
} catch (MalformedURLException mue) {
System.out.println("Ouch - a MalformedURLException happened.");
mue.printStackTrace();
System.exit(1);
} catch (IOException ioe) {
System.out.println("Oops- an IOException happened.");
ioe.printStackTrace();
System.exit(1);
} finally {
System.out.println("Entered finally");
} // end of 'finally' clause
}
}
HtmlUnitの最新スナップショットバージョンは何ですか?私はhtmlunit-2.27-OSGi.jarを使用しています。これは私が得ることができる最新です。 – SantoshV
これは最新のリリースです。 OSGiバージョンが必要ですか? 2.28-SNAPSHOTを試してみてください。 – RBRi
OSGIのどのバージョンが違うのか分かりません。 2.28バージョンのjarファイルを教えてください。私はそれのためにグーグルを試みたが、成功しなかった。 – SantoshV