首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yahoo Trending now块上的Selenium自动化没有抛出这样的元素异常

Yahoo Trending now块上的Selenium自动化没有抛出这样的元素异常
EN

Stack Overflow用户
提问于 2018-07-04 22:21:09
回答 1查看 100关注 0票数 0

我试图找到链接的数量,并从雅虎网页上的“现在流行”块打印链接项目。下面的代码抛出“找不到这样的元素”异常。我在下面的代码中使用了xpath。我也尝试过cssSelector。有没有人可以帮我弄一下xpath或者cssSelector。谢谢。

代码语言:javascript
复制
package com.practice.one;

import java.util.List;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class LinksYahoo {

public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", 
"/Users/owner/desktop/chromedriver");

WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
driver.get("http://www.yahoo.com");
List<WebElement> yahooLinks= driver.findElements(By.tagName("a"));
System.out.println(yahooLinks.size());
   /*   
    for(int i=0;i<yahooLinks.size();i++) {
        yahooLinks.get(i).getText();
    }
    */


 WebElementrightsideLinks=driver.findElement(By.xpath("//ul[@class='M(0) 
 Mstart(-8px) ua-ie8_W(100%) ua-ie7_W(100%) blur_V(h) blur_Op(0) 
selected_Op(1) Trs($trendTrs)'/li]"));

List<WebElement>right_Links=rightsideLinks.findElements
(By.tagName("a"));
System.out.println(right_Links.size());
for (int i=0;i<right_Links.size();i++) {
right_Links.get(i).getText();

}
}

}
EN

回答 1

Stack Overflow用户

发布于 2018-07-05 19:50:07

使用下面的代码,您可以获得所有热门的新文本:

代码语言:javascript
复制
System.setProperty("webdriver.chrome.driver", /Users/owner/desktop/chromedriver");

WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
driver.get("http://www.yahoo.com");
List<WebElement> yahooLinks= driver.findElements(By.tagName("a"));
System.out.println(yahooLinks.size());
/*   
            for(int i=0;i<yahooLinks.size();i++) {
                yahooLinks.get(i).getText();
            }
 */


List<WebElement>right_Links = driver.findElements(By.xpath("//li[@class='trending-list selected']/ul/li/a/span/following-sibling::span"));
        System.out.println(right_Links.size());
        for (int i=0;i<right_Links.size();i++) {
            System.out.println(right_Links.get(i).getText());
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51175875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档