数独ゲームに関する学士論文を書いています。この目的のために、私はたくさんの数独を必要とし、いくつかをダウンロードするプログラムを書くことを考えました。まず、1 つのページに集中したいと思います: http://view.websudoku.com/ ?
必要な td 要素の ID は「c00」から「c88」です
私は HtmlUnit をいじって、それらの要素を取得する方法を見つけました:
java.util.logging.Logger.getLogger("com.gargoylesoftware")
.setLevel(java.util.logging.Level.OFF);
WebClient webClient = new WebClient();
String url = "http://view.websudoku.com/?";
System.out.println("Loading page now: " + url);
HtmlPage page = webClient.getPage(url);
webClient.waitForBackgroundJavaScript(30 * 1000);
for(int i = 0; i < 9; i++) {
for(int j = 0; j < 9; j++) {
System.out.println(page.getElementById("c" + i + j));
}
}
これで適切な要素が得られます。問題は、要素のコンテンツ (特に入力された数字) が JavaScript によって生成されることです。上記のコードは空のフィールドのみを取得し、後で入力されるため、入力されたフィールドは取得しません。
どうすればこの問題を処理できますか? HtmlUnit の最新のヘルプが見つかりません。時代遅れですか?より良いライブラリはありますか?