如何解决python selenium单击当前位置
我有一个下拉菜单,需要单击以激活。下拉菜单的元素未显示在html中,因此无法单击。因此,一旦激活下拉菜单,我便会键入所需的选项,现在只需要在该位置单击鼠标即可,但是我不知道该怎么做。
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.action_chains import ActionChains as AC
from selenium.webdriver.common.keys import Keys
nextButton = browser.find_element_by_xpath('//*[@id="rendererColorClassifyMethodDropdown"]')
nextButton.click()
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
AC.click()
这将导致此错误:
Traceback (most recent call last):
File "<string>",line 1,in <module>
TypeError: click() missing 1 required positional argument: 'self'
向上滚动正在运行,因为我看到监视python命令,但是一旦到达该位置就无法单击该选项。使用nextButton.click()
只会重置下拉菜单。
这是单击时调用下拉列表的html:
<input class="dijitReset dijitInputInner" type="text" autocomplete="off" data-dojo-attach-point="textbox,focusNode" role="textbox" aria-autocomplete="both" aria-required="true" tabindex="0" id="rendererColorClassifyMethodDropdown" value="" aria-invalid="false" readonly="" style="cursor: pointer;">
紧随其后的标签是:
<input type="hidden" value="Natural Breaks">
当我用箭头键滚动时,第二个标记的值更改为当前滚动值不可用,而无法在实际的下拉显示中找到可点击值的html元素。
解决方法
我正在回答自己的问题,以防其他人发现自己处于这种情况下并准备将笔记本电脑扔进窗户。
请勿打扰。使用“ Enter”
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ARROW_UP)
nextButton.send_keys(Keys.ENTER)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。