当前位置: 首页 > 知识库问答 >
问题:

如何使用Selenium查找要单击的精确文本?

黄沈浪
2023-03-14

我正在尝试使用Selenium/Chrome webdriver编写一个脚本,该脚本将根据标题查找上传到click的视频。标题基于一天中的时间/日期。以下是我到目前为止所做的(在自动登录到页面和视频标题设置之后),

web = webdriver.Chrome()
web.get(...website...)

videoTitle = "June 03, 2021 2nd Service"

time.sleep(5) #allow page to load all elements

lastUpload = web.find_element_by_xpath(".//*[text() = 'videoTitle']").text
print(lastUpload)
lastUpload.click()

脚本完成后,我得到页面中的所有文本,而不仅仅是视频标题。我该如何改变这一点?我怎样才能得到我点击的按钮?最后一行失败。

这是我在页面上看到的特定按钮,

当我运行代码时,lastUpload会打印页面中的所有文本,这是不可单击的。从我在这里搜索其他帖子时看到的情况来看,我似乎需要从我对文本的搜索中删除“包含”。我做到了,但是我得到了同样的结果。我需要说得更具体吗?

最后,每次页面刷新时,出现的所有余烬div都会生成新的数字,因此我不能用它来简单地单击最后一项。

提前谢谢!非常感谢。

共有1个答案

单于智
2023-03-14

看看这是否有效:

driver.find_element_by_xpath("//div[text()='June 03, 2021 2nd Service']//ancestor::a[@class='ember-view']").click()
 类似资料:
  • 我搞不懂这个。 我在这个网站上工作,我使用Python中的selenium来单击类名“yellow showPopupUnder”下的第一个元素(屏幕的主要部分有20行关于房屋的黄色信息)。 当我让Selenium点击该行后,它会打开并显示更多信息。我对有“选中”和“未选中”框的部分感兴趣。这些复选框位于这样的div中: 未选中的框位于一个div中,如下所示: 我试着用几种方法联系他们: 我还尝试

  • 错误:NoSuChelementException:没有这样的元素:无法定位元素:{“method”:“xpath”,“selector”:“//td[@class='c($PrimaryColor)W(51%)']”}(会话信息:chrome=77.0.3865.120) 我的代码如下: 这是我试图从“https://finance.yahoo.com/quote/goog?p=goog”中搜索

  • 我想在微软赎回代码页面中自动测试 https://account.microsoft.com/billing/redeem 我试图通过以下代码输入值: 检查显示的元素: 我尝试了很多方法没有工作,花了4个小时不能弄清楚请纠正我的代码环境: > EclipseIDE-Java-Selenium最新版本 Mac OS-Chrome 正确的代码来查找元素。

  • 问题内容: 我正在尝试使用selenium进行右键单击,对此有任何想法吗? 问题答案: 我已经尝试过ActionSequence,而且效果很好。 找不到ContextClick函数,应使用click。 因此,应如下所示: 元素是您的Web元素,2表示右键。 要大致模拟JavaScript中的右键单击,请查看JavaScript模拟代码中的右键单击。

  • 问题内容: 这是我的源代码: 我需要单击“添加新信用卡”卡,该卡在同一页面上打开表格。无法使用Selenium执行此操作。 友善的建议。 问题答案: 请尝试以下操作:

  • 下面是一个危险的find元素,因为索引可能会改变