正确转义字符串Python

时间:2018-01-30 02:56:48

标签: python string escaping

我尝试使用selenium在无序列表中找到一个复选框:

ul=browser.find_element_by_xpath('//[@id="TestTake"]/div[2]/div/div/ol/li[{}]/div[2]/ul'.format(num))

checkbox_id=ul.find_element_by_xpath("//[contains(text(),'{}')]".format(correct.replace("'","\'"))).get_attribute("for")

问题:

"//[contains(text(),'{}')]".format(correct.replace("'","\'"))).get_attribute("for"
correct等于L'或包含引号的内容时,会发生

如何正确逃避单引号?我不确定是否有正确的引用,所以我需要能够处理这两种情况,双引号。

此外,这是唯一的方法,因为我只能通过使用其内容找到的属性for来获取id。

1 个答案:

答案 0 :(得分:0)

结果证明字符串连接起了作用:

checkbox_id = ul.find_element_by_xpath("//*[contains(text(),\"" + correct + "\")]").get_attribute("for")