Python selenium无法单击按钮执行脚本

2024-10-06 10:26:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试单击Linkedin公共页面提要中的按钮

https://www.linkedin.com/company/bbc-news/

这个按钮是一个带有3个点的帖子工具栏按钮

here is the sample screenshot

我的代码是

self.browser.execute_script("document.getElementsByClassName('feed-shared-control-menu__trigger artdeco-button artdeco-button--tertiary artdeco-button--muted artdeco-button--1 artdeco-button--circle artdeco-dropdown__trigger artdeco-dropdown__trigger--placement-bottom ember-view')[1].scrollIntoView();")

self.browser.execute_script("document.getElementsByClassName('feed-shared-control-menu__trigger artdeco-button artdeco-button--tertiary artdeco-button--muted artdeco-button--1 artdeco-button--circle artdeco-dropdown__trigger artdeco-dropdown__trigger--placement-bottom ember-view')[1].click();")

它不会返回任何错误

请帮我解决这个问题

提前谢谢你的帮助

注意:我已经试过了webDriverwaitfind_elements_by_class_name


Tags: selfbrowserexecutefeedscriptbuttondocument按钮
1条回答
网友
1楼 · 发布于 2024-10-06 10:26:23

元素有一个与之关联的id,因此可以使用该id获取元素的xpath,然后单击它。此外,建议使用selenium单击,而不是javascript执行器单击(您当前正在使用)。
您的代码应该如下所示:

self.browser.find_element_by_xpath("//button[@id='ember160']//li-icon").click()

如果您想使用javascript executor click,那么您的代码应该如下所示:

element = self.browser.find_element_by_xpath("//button[@id='ember160']//li-icon")
driver.execute_script("arguments[0].click();", element)

相关问题 更多 >