Selenium webdriver在Amazon中找不到添加到购物车按钮



在选择产品并在另一个页面打开它后,我无法在amazon中使用selenium点击添加到购物车按钮。

如果您没有切换到其他页面,则不会找到Add to card选项。切换到打开的页面,然后尝试点击按钮。

handles = driver.window_handles
driver.switch_to.window(handles[1])
driver.find_element_by_id("add-to-cart-button").click()

如果你这样做了,分享你尝试过的代码和你得到的错误。

如果没有尝试执行的HTML页面,则很难精确定位。然而,我想尝试一下考虑这些:

  1. 点击首页产品
  2. 产品在新选项卡窗口中打开
  3. 点击添加到购物车

p。S:我将使用Java编写,因为您没有提到使用的语言。在其他地方也是一样的

点击首页产品

List <Webelement> productCheck = driver.findElements(By.xpath("<xpath of the product>"))
if (productCheck.size() == 0){
// do something
else {
driver.findElement(By.xpath("<xpath of the product>")).click();
}

产品在新选项卡窗口中打开点击添加到购物车

String parent = driver.getWindowHandle();
List<String> windows = new ArrayList<String>(driver.getWindowHandles());
driver.switchTo().window(windows.get(1));
// Inside the tab window
List <WebElement> addtoCartButton = driver.findElements(By.xpath("<xpath of Add to cart button>"));
if (addtoCartButton.size() == 0 ) {
// do something
else {
driver.findElement(By.xpath("<xpath of Add to cart button>")).click();
}

// do whatever you want in the new tab and if you want to switch back then:
driver.switchTo().window(parent);

相关内容

  • 没有找到相关文章

最新更新