无法识别flipkart网站中的元素

时间:2014-11-05 10:50:04

标签: selenium selenium-webdriver

我正在努力寻找"立即购买" flipcart site.i中的元素已尝试多次使用各种方法,但我得到InvalidSelectorException或NoSuchElementException。 帮我找到元素。这是我的剧本

    WebDriver d=new FirefoxDriver();
    d.get("http://www.flipkart.com/books");
    d.findElement(By.cssSelector("div[href*='children']")).click();
    d.findElement(By.cssSelector("img[alt='children_2-5_Years']")).click();
    d.findElement(By.cssSelector("div[data-pid='9788184514414'>.list-unit>.gd-row>.gu9>.gd-row:eq(1)>.gu4>div:eq(4)>.btn-orange")).click();

提前致谢

2 个答案:

答案 0 :(得分:0)

请使用像d.findElement(By.id(" elementid"))。click();

如果选择器不起作用,那么您可以轻松使用Id或xpath来获取元素。

答案 1 :(得分:0)

WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
driver.get("http://www.flipkart.com/books");
driver.findElement(By.linkText("Children")).click();//Click Children from left pane
driver.findElement(By.xpath("//img[@title='children_2-5_Years']")).click();//Click 2-5 years old image link
driver.findElement(By.xpath("//div[@id='products']/div/div[2]//input[@value='Buy Now']")).click();//click BuyNow for 2nd book

在上面的代码中,在最后一个语句中,更改div编号以单击不同的立即购买按钮。