【发布时间】:2015-09-24 10:42:58
【问题描述】:
我在 selenium python 脚本中使用了以下代码行:
from selenium import webdriver
driver.find_element_by_xpath(u"//span[text()='" + cat2 + "']").click()
cat2 是我得到的数据库列表中的变量:
db = Database()
sql = "SELECT * FROM missing
listeproduit = db.select(sql)
for record in listeproduit:
cat2 = record[6]
问题是当变量包含这样的文本时:
cat2 = Debimetre d'air
那么脚本不起作用,因为它是一个非法的 xpath 表达式。
从我的搜索中,我了解到在我的变量 cat2 中转义单引号是一个问题
从这个答案:Escape single quote in XPath with Nokogiri?
他们建议使用 concat() xpath 函数,但在我的情况下如何使用它? 感谢您的帮助。
干杯
【问题讨论】:
-
你试过这个 -
cat2 = Debimetre d\'air吗? -
@GirishSortur,XPath 有不同的转义机制。
-
我已经尝试过了,但正如 abel 所说,xpath 有不同的转义机制。
标签: python selenium xpath selenium-webdriver