Comment utiliser l'interface htmlunit en Java?
Je suis en train d'utiliser interface htmlunit en Java pour se connecter à un site web. J'ai d'abord entrer le nom d'utilisateur puis votre mot de passe. Après cela, j'ai besoin de sélectionner une option dans une liste déroulante. saisie de l'utilisateur et le mot de passe semble avoir fonctionné, mais quand j'essaie de sélectionner l'élément à partir de la liste déroulante, j'ai des erreurs. Quelqu'un peut-il m'aider à résoudre ce problème? Mon code est comme suit:
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
import com.gargoylesoftware.htmlunit.html.HtmlOption;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlSelect;
public class homePage {
public static void main(String[] args) throws Exception {
final WebClient webClient = new WebClient();
final HtmlPage page = webClient.getPage("website name here");
HtmlElement usrname = page.getElementByName("username");
usrname.click();
usrname.type("myusername");
HtmlElement psswrd = page.getElementByName("password");
psswrd.click();
psswrd.type("mypassword");
HtmlSelect select = (HtmlSelect) page.getElementById("cmbProducts");
HtmlOption option = select.getOptionByValue("ITDirect");
select.setSelectedAttribute(option, true);
HtmlElement signin = page.getElementByName("SignIn");
signin.click();
System.out.println(page.getTitleText());
webClient.closeAllWindows();
}
}
Nous dire exactement quelles erreurs vous obtenez serait très utile.
OriginalL'auteur Peter | 2011-02-02
Vous devez vous connecter pour publier un commentaire.
Voici le code à partir de tests unitaires pour interface htmlunit.
Avis qu'ils utilisent getSelectsByName pas getElementById.
Voici un lien pour ceux des tests unitaires afin que vous puissiez voir comment ils prescrivent l'utilisation de l'API. http://htmlunit.sourceforge.net/xref-test/com/gargoylesoftware/htmlunit/html/HtmlSelectTest.html
OriginalL'auteur Speck
Obtenir la forme de l'identifiant de connexion et mot de passe.
voici un exemple:
OriginalL'auteur EK_AllDay