环境搭建
<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
作业:
- 链家网首页https://bj.lianjia.com/
- 输入"上地",点击开始找房、
- 尽量使用显式等待
- 尽量使用多种方式来定位元素