В Java и HtmlUnit, как дождаться окончания загрузки результирующей страницы и загрузить ее как HTML?

HtmlUnit — замечательная библиотека Java, позволяющая программно заполнять и отправлять веб-формы. В настоящее время я поддерживаю довольно старую систему, написанную на ASP, и вместо того, чтобы вручную заполнять эту веб-форму ежемесячно, как мне требуется, я пытаюсь найти способ, возможно, автоматизировать всю задачу, потому что я продолжаю забыв об этом. Это форма для получения данных, собранных в течение месяца. Вот что я закодировал до сих пор:

WebClient client = new WebClient();
HtmlPage page = client.getPage("http://urlOfTheWebsite.com/search.aspx");

HtmlForm form = page.getFormByName("aspnetForm");       
HtmlSelect frMonth = form.getSelectByName("ctl00$cphContent$ddlStartMonth");
HtmlSelect frDay = form.getSelectByName("ctl00$cphContent$ddlStartDay");
HtmlSelect frYear = form.getSelectByName("ctl00$cphContent$ddlStartYear");
HtmlSelect toMonth = form.getSelectByName("ctl00$cphContent$ddlEndMonth");
HtmlSelect toDay = form.getSelectByName("ctl00$cphContent$ddlEndDay");
HtmlSelect toYear = form.getSelectByName("ctl00$cphContent$ddlEndYear");
HtmlCheckBoxInput games = form.getInputByName("ctl00$cphContent$chkListLottoGame$0");
HtmlSubmitInput submit = form.getInputByName("ctl00$cphContent$btnSearch");

frMonth.setSelectedAttribute("1", true);
frDay.setSelectedAttribute("1", true);
frYear.setSelectedAttribute("2012", true);
toMonth.setSelectedAttribute("1", true);
toDay.setSelectedAttribute("31", true);
toYear.setSelectedAttribute("2012", true);
games.setChecked(true);
submit.click();

После click()я должен дождаться перезагрузки той же веб-страницы, потому что где-то есть таблица, отображающая результаты моего поиска. Затем, когда страница загрузится, мне нужно загрузить ее в виде HTML-файла (, очень похожего на «Сохранить страницу как…» в вашем любимом браузере ), потому что я буду вычищать данные, чтобы вычислить их итоги., и я уже сделал это, используя библиотеку Jsoup .

Мои вопросы :1. Как программно дождаться завершения загрузки веб-страницы в HtmlUnit? 2. Как программно загрузить результирующую веб-страницу в виде HTML-файла?

Я уже просмотрел документы HtmlUnit и не смог найти класс, который будет делать то, что мне нужно.

7
задан Matthew Quiros 5 July 2012 в 06:40
поделиться