Ras*_* Id 6 java redirect htmlunit
我在网上银行应用程序工作.我想登录以检索余额.我一直在做一些研究,我从其他帖子中找到了一些有用的HtmlUnit代码.但是,我处理页面的重定向问题.路径如下:主登录表单(第1页),生成一个验证凭据的新页面(第2页).到目前为止我做得很好,但我找不到解决方案来检索主页(第3页),这里是代码:
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlForm;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
public class WellsF {
public static void main(String[] args) throws Exception {
WebClient webClient = new WebClient(BrowserVersion.CHROME_16);
webClient.getOptions().setJavaScriptEnabled(true);
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.getOptions().setCssEnabled(true);
webClient.getOptions().setUseInsecureSSL(true);
webClient.getOptions().setRedirectEnabled(true);
HtmlPage page1 = webClient
.getPage("https://www.wellsfargo.com/home.jhtml");
final HtmlForm form = (HtmlForm) page1.getElementById("frmSignon");
form.getInputByName("userid").setValueAttribute("user id");
form.getInputByName("password").setValueAttribute("user password");
HtmlPage page2 = (HtmlPage) form.getInputByName("btnSignon").click();
synchronized (page2) {
page2.wait(5000);
System.out.println(page2.asText());
System.out.println("=========================== page2\n");
}
HtmlPage page3 = (HtmlPage) webClient.openWindow(page2.getUrl(),
"signon").getEnclosedPage();
System.out.println(page3.asText());
webClient.closeAllWindows();
}
}
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用以下代码并检查其是否有效:
HtmlPage page3 = (HtmlPage) webClient.getPage(page2.getUrl());
webClient.getOptions().setTimeout(10*1000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3385 次 |
| 最近记录: |