バックグラウンドで実行方法
S2Robot は、execute() を実行すると標準ではクロールが終わるまで待ち状態になります。 setBackground() メソッドにより、execute() メソッドの実行待ちにならないようにできます。
設定方法
S2Robot#setBackground(true) とすることで、execute() の実行をバックグラウンドにできます。
S2Robot s2Robot = (S2Robot) container.getComponent(S2Robot.class);
// バックグランドで実行にする
s2Robot.setBackground(true);
s2Robot.addUrl(url);
s2Robot.getUrlFilter().addInclude(url + ".*");
String sessionId = s2Robot.execute();
:
// 何か処理
:
// 終了を待つ
s2Robot.awaitTermination();
awaitTermination() メソッドを呼び出すことにより、クロール終了を待つことができます。 awaitTermination(long millis) メソッドにより、待ち時間のタイムアウトを設定できます。
