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

使用xpath查找textarea元素

居晗日
2023-03-14

我一直在为这个selenium项目苦苦挣扎,一直在寻找与这个问题略有关联的老参考资料或帖子。我承认我不熟悉xpath和selenium,所以希望它可以像修复语法一样简单。我正在使用python 3.6。卢本图19.10上的9,如果这有什么区别的话。

我试图访问的html元素:

 <div class="NfvXc">
   <textarea aria-label="Write a caption…" autocomplete="off" autocorrect="off"
   class="_472V_" placeholder="Write a caption…"></textarea>
  </div>

我尝试过的代码:

add_text=browser_object.find_element_by_xpath("//文本区[包含(@aria-tag,'写一个标题...')]")

add_text=browser_object.find_element_by_xpath(//div[包含(text(),'写一个标题...')])

尝试不同的XPath时出现的错误消息:

error in process_image(): Message: Given xpath expression "//*div[contains(text(),'Write a caption...')]" is invalid: SyntaxError: The expression is not a legal expression.

我检查了火狐来尝试捕获xpath,显示为:/html/body/div[1]/sect/div[2]/Sect[1]/div[1]/text Area

虽然我还不确定如何调整我的xpath来找到那个元素,很明显。

共有1个答案

满耀
2023-03-14

错误消息//*div[包含(text(),'编写标题...')]中的XPath无效,因为您不能同时拥有*和div以及XPath的开头。选择其中一个,例如//div[包含(text(),'写一个标题...')]
但是它仍然不起作用,因为文本在属性中,您可以使用//文本区[@aria-tag='写一个标题....']
请注意,//文本区域[包含(text(),'编写标题...')]将不返回匹配。您可以在浏览器中使用控制台中的语法$x()测试您的XPaths,更多信息请访问此处。

 类似资料:
  • 请帮助我,我正在尝试选择一个图片,这是一个链接(一个网站上的培训师) 这是我的代码:

  • 非常感谢您的帮助。 我想知道firebug复制xpath是否总是适用于webdriver。 我有一个带有列表的页面,我可以获得完整的xpath来查找前两个元素,但无法对3、4执行相同的操作。 对于第三个,它不起作用: 错误: org.openqa.selenium.NoSuchElementException:无法定位元素:{"method":"xpath","selector":"/html/b

  • 我开发这个程序是为了用selenium在python中执行一些自动化任务。系统将提示用户输入其项目名称。然后程序将打开网站并选择与用户输入的名称相同的项目。我将使用xpath选择元素。但是,如果站点上有许多项目,它们都具有相同的类。所以我想我可以使用xpath来选择类,但要传入文本(user\u sprroject\u name\u here)。这里是我拥有的xpath和我尝试选择的html。 超

  • 我是DOM查询的新手,我想知道是否可以通过Xpath直接查询DOM元素,类似于下面提到的代码? 谢谢

  • 问题内容: 在我的网页中,有一个名为的。 我如何找到它? 问题答案: 此选择器应该可以工作,但是如果您用合适的标记替换它,效率会更高: 或者,由于我们知道所搜索的元素是: 但是,因为这也可以匹配诸如或的情况,所以注释中提供的@Tomalak版本 更好 : 如果您真的想确定它可以正确匹配,则还可以使用normalize-space函数清除类名周围的杂散空格字符(如@Terry所述): 请注意,在所有