javascript - 使用 Python 3.5.1 和 Selenium 2.53.2 选择并单击网站按钮时出现问题

标签 javascript python selenium web-scraping

我目前使用的是运行 OS X El Capitan 的 Macbook Air。我正在使用 Python IDLE 并尝试选择并单击以下网页按钮:

<div class="search-form-actions">
  <button class="btn btn-submit js-search-form-submit" selector=".js-search-form-submit" helptip="When you are ready to view all the contacts that match your criteria, click View Results." data-placement="top" data-step-number="5" data-step-name="Get Results">View Results</button>
</div>

通过使用以下脚本:

from selenium import webdriver
browser = webdriver.Firefox()
type(browser)
browser.get('https://app.avention.com/')

#enter username
usernameElem = browser.find_element_by_name("username")
usernameElem.send_keys('myusername')
usernameElem.submit()

#enter password
usernameElem = browser.find_element_by_name("password")
usernameElem.send_keys('mypassword')
usernameElem.submit()

#selecting 'Saved Searches' page
htmlElem = browser.find_element_by_tag_name("html") #without this line, site blocks next command
browser.get('https://app.avention.com/search/saved/7a1fbf2d-329a-4fda-8c51-4be5bc07317c#')

#selecting 'View Results' button
resultsElem = browser.find_element_by_class_name("btn.btn-submit.js-search-form-submit").click()

我收到以下错误:

NoSuchElementException: Message: Unable to locate element: {"method":"class name","selector":"btn.btn-submit.js-search-form-submit"}

我尝试过按类名查找元素

我尝试过按名称查找元素

我尝试过通过 id 查找元素

我尝试过通过链接文本查找元素

但没有成功。有什么建议。非常感谢。

加文。

最佳答案

class_name 接收一个类名

browser.find_element_by_class_name("btn")
# or
browser.find_element_by_class_name("btn-submit")
# or
browser.find_element_by_class_name("js-search-form-submit")

如果您希望所有类一起使用css_selector

browser.find_element_by_css_selector(".btn.btn-submit.js-search-form-submit")

您也不能将结果分配给变量并同时单击它。应该是

resultsElem = browser.find_element_by_class_name("btn")
# or
browser.find_element_by_class_name("btn").click()

关于javascript - 使用 Python 3.5.1 和 Selenium 2.53.2 选择并单击网站按钮时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37373767/

相关文章:

javascript - 如何在 Vue 中停止组件加载和重定向?

python - 为什么 justify 和anchor 对于 Python Tkinter 的 Label 不起作用

python - 在 python 中创建一个简单的数字模式?

selenium - 如何通过 Java 使用 XPath 和 Selenium WebDriver 单击 SVG 元素

javascript - Dropzone.js 定义图片上传的 MinWidth 和 MinHeight

javascript - 动态创建 React 元素

javascript - 转到包含我选择的下拉值的 URL (url.com/dropdownvalue1+dropdownvalue2+etc)

python - 如何用python解析xml响应?

java - 无法从 Selenium Java 的 html 元素获取文本

selenium - Robot Framework - Selenium2library - 检查页面的 Favicon