北京线下第三期_Selenium 基础_20180701

环境搭建

        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.12.0</version>
        </dependency>

元素定位基础篇

  • id
  • name
  • className
  • linkText

基础API

WebElement

  • 无返回值
    • click
    • sendKeys
  • 有返回值
    • getText
    • getValue
    • getAttribute

WebDriver

  • get
  • quit

隐式等待

driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);

显式等待

wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("user_login"))).sendKeys("");

Chrome headless 示例

 //设置ChromeOptions
        ChromeOptions options = new ChromeOptions();
        options.addArguments("--headless");
 //启动Chrome浏览器
        WebDriver driver = new ChromeDriver(options);

支持多浏览器

Firefox\IE\Safari

作业:

  1. 链家网首页https://bj.lianjia.com/
  2. 输入"上地",点击开始找房、
  3. 尽量使用显式等待
  4. 尽量使用多种方式来定位元素