如果完成了实操1的同学,环境搭建已经ok,环境还没有好的同学请参考 实操1_百度搜索
为了大家顺利,我们还想按照实操1那样,先导入一个基本项目。在次基础上进行代码编写、
我们一起写写看。
1.打开乐视视频网页并最大化
如下图所示,修改网址为乐视视频网址
2.选择【电影】
我们可以打开开发者工具(按F12即可打开)。以便观察要定位元素的特征。如下图所示,修改网址为乐视视频网址
根据初步分析,选择了用链接文本特征来定位,我编写的两行代码如下,第二句是为了新打开页面加载完成,而做得等待。
输入过程中注意:
3. 在新打开页面的 “按类型”下选择【全部】
如下图所示,修改网址为乐视视频网址
首先需要切换到新的窗口上。
//所有窗口句柄数组
Object[] winhandles = driver.getWindowHandles().toArray();
//切换到第二个窗口(数组下标从0开始,第一个页面的下标是0,第二个窗口下标是1
driver.switchTo().window((String)winhandles[1]);
driver.findElement(By.cssSelector("body > div:nth-child(7) > div > div > div.nav_box.nav_box2 > ul > li:nth-child(1) > a > b")).click();
4. 在新打开的页面上依次选择【免费】、【动作】、【中国香港】、【2016】
所以首先要增加一个等待,确保页面加载完成,然后切换到第三个页面上。
Thread.sleep(2000); //休眠等待新页面加载完成。以便后续操作能在新页面上找到元素
Object[] winhandles02= driver.getWindowHandles().toArray();
//切换到第二个窗口(数组下标从0开始,第一个页面的下标是0,第三个窗口下标是2
driver.switchTo().window((String)winhandles02[2]);
用F12 查看,免费 、动作、中国香港、2016都是 超链接。页面上没有重复的同名的超链接。那么就可以使用超链接定位
driver.switchTo().window((String)winhandles02[2]);
driver.findElement(By.linkText("免费")).click();
driver.findElement(By.linkText("动作")).click();
driver.findElement(By.linkText("中国香港")).click();
driver.findElement(By.linkText("2016")).click();
5. 选择【最新】
最新也是超链接。方法同上
driver.findElement(By.linkText("最新")).click();
6. 选择第一部电影
如下图所示,修改网址为乐视视频网址
7. 选择【输入框】,输入【周星驰】,并点击【搜索】
如下图所示,修改网址为乐视视频网址
8. 选择文字标签【下一页】
如下图所示,修改网址为乐视视频网址
9. 选择【首页】
如下图所示,修改网址为乐视视频网址
10.选择【电视剧】
如下图所示,修改网址为乐视视频网址
11.选择【更多】
如下图所示,修改网址为乐视视频网址
12.选择【独播】、【穿越】、【2013】
如下图所示,修改网址为乐视视频网址
13.选择定位该内容并点击
如下图所示,修改网址为乐视视频网址
14.依次选择【预告片】、【花絮】、【分集剧情】、【乐迷畅谈】
如下图所示,修改网址为乐视视频网址