私は HttpUnit を使用してこの Web サイトをシミュレートしています: http://www.voyages-sncf.com/ これは私のコードです: 結果ではなく、検索用の URL だけが最終的なリダイレクト URL に送信されません。
public class TestHttpUnit {
public static void main(String[] args) throws Exception {
// Create and initialize WebClient object
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_10);
webClient.setThrowExceptionOnScriptError(false);
webClient.setRefreshHandler(new RefreshHandler() {
public void handleRefresh(Page page, URL url, int arg) throws IOException {
System.out.println("handleRefresh");
}
});
// visit Yahoo Mail login page and get the Form object
HtmlPage page = (HtmlPage) webClient.getPage("http://www.voyages-sncf.com/");
//Trouver le formulaire par le nom
HtmlForm form = page.getFormByName("TrainTypeForm");
//Trouver le formulaire avec l'action
//HtmlForm form = page.getFirstByXPath("//form[@action='http://www.voyages-sncf.com/dynamic/expressbooking/_SvExpressBooking']");
// Enter login and password of
form.getInputByName("origin_city").setValueAttribute("paris");
form.getInputByName("destination_city").setValueAttribute("marseille");
form.getInputByName("outward_date").setValueAttribute("29/03/2013");
// Click "Sign In" button/link
page = (HtmlPage) form.getInputByValue("Rechercher").click();
System.out.println(page.asText());
}
}