当前位置: 首页 > 面试题库 >

如何在XPath中处理单引号

景志
2023-03-14
问题内容

我在一行中检查页面上是否存在按部分文本表示的某个元素。

self.b.find_element_by_xpath(".//*[contains(text(), '%s')]" % item_text)

因此,可能item_text在字符串中包含单引号。例如"Hanes Men's Graphic "

它变成 self.b.find_element_by_xpath(".//*[contains(text(), 'Hanes Men's Graphic ')]")

在那种情况下,我得到错误:

InvalidSelectorError: Unable to locate an element with the xpath expression .//*[contains(text(), 'Hanes Men's Graphic ')] because of the following error:
SyntaxError: The expression is not a legal expression.

item_text在将其用于之前,我应该执行什么操作self.b.find_element_by_xpath(".//*[contains(text(), '%s')]" % item_text)

我知道我可以在表达式周围使用单引号,并在内部使用双引号,但这不是我要寻找的解决方案。


问题答案:

尝试如下:-

self.b.find_element_by_xpath(".//*[contains(text(), \"Hanes Men's Graphic\")]")

要么

self.b.find_element_by_xpath('.//*[contains(text(), "%s")]' % item_text)

要么

self.b.find_element_by_xpath(".//*[contains(text(), \"%s\")]" % item_text)

希望它能工作.. :)



 类似资料:
  • 问题内容: 如何在具有varchar数据类型且单引号的列中插入记录? 示例 :名字是,姓氏是 问题答案: 使用两个单引号 或者,使用新的(10g +)报价方法 :

  • 查询工作正常,并返回列中有的所有记录。 但是,如果我想获取在中存在的所有记录,我就无法形成正确的查询。 查询不转义单引号,而是按字面意思转义,导致查询不完整。

  • XPath如何处理XML命名空间? 如果我使用 为了解析下面的XML文档,我得到了0个节点。 但是,我没有在XPath中指定名称空间(即不是路径的每个标记的前缀)。如果我没有明确告诉XPath,它怎么知道我想要哪个?我认为在这种情况下(因为只有一个名称空间),XPath可以完全忽略。但如果有多个名称空间,事情可能会变得糟糕。

  • 我如何纠正这一点?

  • 下面是我的父组件,它包含一个循环的多个输入。如何选择一个来聚焦?在这种情况下,我必须创建动态吗?

  • 问题内容: 我想要一个文本区域,可以处理按 Tab 键的情况。 在默认情况下,如果您按 Tab 键,则焦点将离开文本区域。但是,当用户想要在文本区域中输入 Tab 键时会怎样呢? 我可以捕捉到此事件并将焦点返回到文本区域并将标签添加到 当前 光标位置吗? 问题答案: