提问人:Marsango 提问时间:11/11/2023 最后编辑:toyota SupraMarsango 更新时间:11/11/2023 访问量:49
使用seleniumbase单击元素
Clicking on element with seleniumbase
问:
我正在尝试单击一个元素,但它没有按预期发生
我尝试了以下方法,但由于某种原因它不起作用:seleniumbase
<code>
driver.click('div[class="ovm-OverviewMediaButton me-MediaButtonLoader me-MediaButtonLoader_MLVideo"]')
Received the exception:
seleniumbase.common.exceptions.NoSuchElementException: Message:
Element {div[class="ovm-OverviewMediaButton me-MediaButtonLoader me-MediaButtonLoader_MLVideo"]} was not present after 7 seconds! <code>
Trying with only the first class name:
<code> driver.click('div[class="ovm-OverviewMediaButton"]')
seleniumbase.common.exceptions.NoSuchElementException: Message:
Element {div[class="ovm-OverviewMediaButton"]} was not present after 7 seconds! <code>
我试图点击的元素:
<code>
<div class="ovm-OverviewMediaButton me-MediaButtonLoader me-MediaButtonLoader_MLVideo "></div> <code>
答:
0赞
Michael Mintz
11/11/2023
#1
下面是该元素的有效选择器:.div.ovm-OverviewMediaButton
要使用 seleniumbase 单击它,请使用:driver
driver.click("div.ovm-OverviewMediaButton")
评论
0赞
DonnyFlaw
11/13/2023
为什么你认为OP使用了无效的选择器?
0赞
Michael Mintz
11/13/2023
每当您有一长串类名时,选择一个并使用符号会更可靠(也更干净)。网站可以轻松添加/删除类名,从而破坏您的选择器。.class
0赞
DonnyFlaw
11/14/2023
是的,这是真的,但是当你说你的选择器是有效的时,你暗示OP使用了无效的选择器,这是不正确的,可能会误导OP。最好建议你的答案更可靠,我想它会起作用,但它不会真正让 OP 了解问题的根本原因。
评论
@class
driver.click('div[class="ovm-OverviewMediaButton me-MediaButtonLoader me-MediaButtonLoader_MLVideo "]')