发新话题
打印

selenium+firefox网页信息抓取调试案例

selenium+firefox网页信息抓取调试案例

import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import org.openqa.selenium.firefox.FirefoxDriver;


public class Chat {
    public static void main(String[] args) throws WriteException, IOException,
    InterruptedException, BiffException {
        // 如果你的 FireFox 没有安装在默认目录,那么必须在程序中设置
        System.setProperty("webdriver.firefox.bin", "C:\\Program Files\\Mozilla Firefox\\firefox.exe");
        // 创建一个 FireFox 的浏览器实例
        WebDriver driver = new FirefoxDriver();

        // 让浏览器访问 Baidu
        driver.get("http://www.baidu.com");
        // 用下面代码也可以实现
        // driver.navigate().to("http://www.baidu.com");

        // 获取 网页的 title
        System.out.println("1 Page title is: " + driver.getTitle());

        // 通过 id 找到 input 的 DOM
        WebElement element = driver.findElement(By.id("kw"));

        // 输入关键字
        element.sendKeys("zTree");

        // 提交 input 所在的  form
        element.submit();
       
        // 通过判断 title 内容等待搜索页面加载完毕,间隔10秒
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
            public Boolean apply(WebDriver d) {
                return d.getTitle().toLowerCase().endsWith("ztree");
            }
        });

        // 显示搜索结果页面的 title
        System.out.println("2 Page title is: " + driver.getTitle());
       
        //关闭浏览器
        driver.quit();
    }
}

注:火狐 19.0 selenium v2.40
[ 本帖最后由 xiexie 于 2016-10-20 17:35 编辑 ]

TOP

发新话题