Вам не нужен идентификатор или имя, чтобы получить HtmlForm
Вы можете получить все формы на странице, и искать какой-то конкретный атрибут.
Или вы также можете использовать XPath напрямую.
public static void main(String[] args) throws Exception {
try (WebClient webClient = new WebClient()) {
webClient.getOptions().setUseInsecureSSL(true);
HtmlPage page = webClient.getPage("https://www.jambox.pl/ogladaj");
// get the form first
for (HtmlForm form : page.getForms()) {
System.out.println(form.asXml());
//if this is your form, use it.
}
// or using XPath with attribute 'action'
HtmlForm form2 = page.getFirstByXPath("//form[@action='/widget2']");
}
}
Тем не менее, кажется, что HtmlUnit не извлекает все формы, что является ошибкой, я думаю.
Используйте jquery и используйте $ (". Form"), и вы получите объект forms. –
Я хочу войти на сайт в Java – mati2762
Подождите, так что у вас есть приложение Java, которое вы хотите использовать для вызова функции javascript? Я думаю, что вам не повезло, если не создать javascript-бегун и загрузить скрипт ... Я думаю, вам больше повезло бы загрузить скрипт и изучить его и создать свою собственную версию на Java. Не ошибитесь, что Javascript и Java будут связаны, Javascript так называется только потому, что он разделяет некоторые из его синтаксиса с Java, а не с его фактическим временем выполнения или развитием. –