猿问

菜鸟问题 - Python、Selenium、XPATH - 搜索文本是否在网站上

我对 xpath 的一些基本理解有疑问。我已经阅读了 xpath 文档并在这里搜索了一段时间(显然我刚刚监督了一些基础知识),但我只是迷失了以下情况。


<div class="foo">

    <h1 class="title">TRANSFERS</h1>

</div>

我知道有多种方法可以使用 xpath 从我的代码中获取 HELLOWORLD。但是,如果我只想搜索整个页面以查看它是否包含“HELLOWORLD”,我该怎么办?


阅读文档后,我发现该语句给了我一条错误消息:


y = driver.find_element_by_xpath([contains(text()='TRANSFERS')])


  File "<ipython-input-587-f5ff19bd101b>", line 1

    y = driver.find_element_by_xpath([contains(text()='TRANSFERS')])

                                               ^

SyntaxError: expression cannot contain assignment, perhaps you meant "=="?


我在这里缺少什么?


幕布斯6054654
浏览 94回答 2
2回答

弑天下

你的xpath是错误的。尝试以下任一xpath选项来识别节点的文本。y&nbsp;=&nbsp;driver.find_element_by_xpath("//*[contains(text(),'TRANSFERS')]")或者y&nbsp;=&nbsp;driver.find_element_by_xpath("//*[contains(.,'TRANSFERS')]")或者y&nbsp;=&nbsp;driver.find_element_by_xpath("//*[text()='TRANSFERS']")

人到中年有点甜

使用这个:尝试创建一个名为 x 的 WEBELEMENTS 列表,然后:&nbsp;&nbsp;&nbsp;&nbsp;x=driver.find_elements_by_xpath([contains(.,'TRANSFERS')]即使没有找到任何东西,这也不会导致错误,并且只会返回一个空列表,玩得开心;)
随时随地看视频慕课网APP

相关分类

Python
我要回答