从 XPATH Selenium 获取数据的问题
Posted
技术标签:
【中文标题】从 XPATH Selenium 获取数据的问题【英文标题】:Problem with taking data from XPATH Selenium 【发布时间】:2022-01-05 08:21:46 【问题描述】:我正在开发一个程序,我需要从一个框中选择一个特定的名称。问题是如果名称改变,XPATH 也会改变,所以我不能真正轻松地访问它。我试图用“包含”来做,但它不起作用。
这是我需要点击的(因此查找和访问):
https://i.stack.imgur.com/q9tnM.png
有什么帮助或建议吗?
【问题讨论】:
self.driver.find_element(By.XPATH, f"//div[contains(text(), 'player_name')] ").click() selenium.common.exceptions.NoSuchElementException: 消息:没有这样的元素:无法找到元素:"method":"css selector","selector":"[name="Morelos"]" 用信息更新主要问题,而不是 cmets。 你这是什么意思? 【参考方案1】:您可以尝试通过元素文本找到该名称
driver.find_elements_by_xpath("//*[contains(text(), 'Alfredo Morelos')]")
【讨论】:
不,工作; selenium.common.exceptions.NoSuchElementException:消息:没有这样的元素:无法找到元素:"method":"xpath","selector":"//*[contains(text(), 'player_name')] " 你可以试试 driver.find_elements_by_xpath(f"//*[contains(text(), 'player_name')]") 还是不行 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。以上是关于从 XPATH Selenium 获取数据的问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在python中使用selenium Xpath从tr标签中获取所有td [3]标签
如何通过 Selenium 和 Python 从 html 标签跨度获取文本
在 Selenium 测试中使用 XPath 通过文本获取 WebElement