zoukankan      html  css  js  c++  java
  • HtmlUnit: A Simple Example: Check Yahoo Email---转载

    1. src http://www.muneebahmad.com/index.php/archives/81

    package com.examples.htmlunit;
    
    import java.io.IOException;
    import java.net.URL;
    import java.util.List;
    
    import com.gargoylesoftware.htmlunit.BrowserVersion;
    import com.gargoylesoftware.htmlunit.Page;
    import com.gargoylesoftware.htmlunit.RefreshHandler;
    import com.gargoylesoftware.htmlunit.WebClient;
    import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
    import com.gargoylesoftware.htmlunit.html.HtmlForm;
    import com.gargoylesoftware.htmlunit.html.HtmlPage;
    import com.gargoylesoftware.htmlunit.html.HtmlTable;
    import com.gargoylesoftware.htmlunit.html.HtmlTableRow;
    
    public class YahooMail {
    
        public static void main(String[] args) throws Exception {
    
            // Create and initialize WebClient object
            WebClient webClient = new WebClient(BrowserVersion.FIREFOX_2);
            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("https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym");
            HtmlForm form = page.getFormByName("login_form");
    
            // Enter login and passwd
            form.getInputByName("login").setValueAttribute("@@@@@@@");
            form.getInputByName("passwd").setValueAttribute("@@@@@@@");
    
            // Click "Sign In" button/link
            page = (HtmlPage) form.getInputByValue("Sign In").click();
    
            // Click "Inbox" link
            HtmlAnchor anchor = (HtmlAnchor) page.getHtmlElementById("WelcomeInboxFolderLink");
            page = (HtmlPage) anchor.click();
    
            // Get the table object containing the mails
            HtmlTable dataTable = (HtmlTable) page.getHtmlElementById("datatable");
    
            // Go through each row and count the row with class=msgnew
            int newMessageCount = 0;
            List rows = (List) dataTable.getHtmlElementsByTagName("tr");
            for (HtmlTableRow row: rows) {
                if (row.getAttribute("class").equals("msgnew")) {
                    newMessageCount++;
                }
            }        
    
            // Print the newMessageCount to screen
            System.out.println("newMessageCount = " + newMessageCount);
    
            //System.out.println(page.asXml());                        
    
        }
  • 相关阅读:
    Linux下安装配置词典GoldenDict
    ubuntu 安装LaTex
    ubuntu 安装Opencv2.4.7
    Ubuntu 安装Matlab2010a
    Ubuntu 挂载ISO文件的方法
    ubuntu安装Java jdk1.7.0
    VDI转vmdk(VirtualBox与VMware硬盘格式转换)[转]
    oracle忘记密码,修改密码,解锁
    SQL Server 2008中文企业版下载地址和序列号[转]
    HTTP 错误 500.19 – Internal Server Error web.config 文件的 system.webServer/httpErrors 节中不允许绝对物理路径“C:inetpubcusterr”[转]
  • 原文地址:https://www.cnblogs.com/davidwang456/p/3448240.html
Copyright © 2011-2022 走看看