我尝试用硒操纵某些网站。不幸的是,我遇到了进一步的问题。
打开网站后,我需要选择一个元素并执行click事件。我尝试过使用find_element_by:name,tag_name,class_name,但是每次收到消息“没有这样的元素”。检查此元素将得到以下输出:
<div
style="position: absolute; left: 90px; top: 3px; width: 48px; height: 18px; text-align: center; cursor: pointer; font-family: tahoma; font-size: 11px; font-weight: normal; border-top: 1px solid rgb(85, 85, 85); border-left: 1px solid rgb(85, 85, 85); border-right: 1px solid rgb(85, 85, 85); padding-top: 5px; background-color: rgb(117, 148, 159); border-radius: 4px 4px 0px 0px; color: rgb(255, 255, 255);"
>Działki</div>
如何使用硒(python)选择该元素
更新:
我认为xpat是解决方案,部分是正确的
现在我已经尝试过了:
browser.find_elements_by_xpath("/html/body/div[3]/div[8]/div[2]/div[1]/div[4]").click()
...但是现在我有了:
AttributeError:“列表”对象没有属性“点击”
怎么了?
答案 0 :(得分:0)
如果您知道div将包含什么,但没有类或名称,则可以尝试通过其内部内容来识别它。在您的示例中,“Działki”
此答案说明了如何执行此操作:How do I find an element that contains specific text in Selenium Webdriver (Python)?
答案 1 :(得分:0)
如果您知道div中的文本并且该文本是唯一的,则可以使用text()
进行查找。
它看起来像这样:
browser.find_elements_by_xpath("//div[text()='Działki']")
希望这对您有帮助!