findElements是用来查找一组元素,而findElement是用来查找匹配表达式的第一个元素。
这里用百度新闻某一个模块下新闻标题打印举例。
package rjcs;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Set;
import org.openqa.selenium.interactions.Actions;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.testng.annotations.Test;
import org.openqa.selenium.*;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.openqa.selenium.OutputType;
import com.thoughtworks.selenium.SeleneseTestNgHelper;
public class ckqhh
{
public static void main(String[] args)
{
System.setProperty("webdriver.firefox.bin","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"); //设置火狐的安装路径,防止系统找不到
FirefoxDriver driver = new FirefoxDriver(); //初始化FireFox浏览器实例,并打开浏览器
try
{
driver.manage().window().maximize(); //最大化窗口
Thread.sleep(3000);
driver.manage().window().maximize(); //最大化窗口
Thread.sleep(3000);
driver.get("https://news.baidu.com");
List <WebElement> links = driver.findElements(By.xpath(".//*[@id='pane-news']/ul[1]/li/a"));
for(int i=0; i<links.size(); i++)
{
System.out.println(links.get(i).getText());
}
Thread.sleep(8000);
}catch (Exception e)
{
e.printStackTrace();
}finally
{
driver.quit();
}
}
}
执行结果:
2020年的民生工作,中央部委将这样发力!
发改委:中西部和东北地区基本取消城市落户限制
西宁公交站坍塌事故续:16名住院伤者中已有9人出院
铁路春运发送旅客已突破1亿人次:今日预计发送1200万
新版限塑令来了,外卖、快递不能再随便用塑料袋
又来2万吨!年内第4次投放中央储备冻猪肉