使用Selenium with Python

时间:2018-06-18 22:06:08

标签: python selenium selenium-chromedriver

我正在尝试使用nike.com上的Selenium制作基本的表单填充。我已经完成了大部分工作,但是我无法点击按钮来选择性别。我试图使用许多find_element_by_xxxxx代码的例子,但它没有任何效果。通过id和xpath查找元素也没有那么多。我得到的典型错误是Message: no such element: Unable to locate element。我对编码很陌生,所以我很容易犯错误,但是对于你们如何解决它们的任何想法都将非常感激

Picture of interface and element of website

2 个答案:

答案 0 :(得分:1)

XPATH很长,你可以简化。 从它的外观来看,我猜想每次有新的会话时,这些ID都会发生变化。

更简单的XPATH选择器可能是......

 "//span[text() = 'Male']"
  • // 指定搜索整个文档
  • span 指定要搜索的元素类型
  • text()指定需要在元素
  • 中的文本

(这将为你提供span元素,但它仍然可以工作)

"//span[text() = 'Male']/parent::li//input"

(这将为您提供实际的输入按钮)

此外,与建议Ollin Boer Bohan一样,在对元素执行操作之前,请考虑使用等待。

答案 1 :(得分:0)

@cavan答案是正确的,你也可以像这样使用xpaht

//input[@type='button']//following::span[text()='Male']

在这里我们可以使用以下来定位男性,同样可以为女性按钮