部分的なテキストによって特定の要素がページに存在するかどうかを確認する行があります。xpathで一重引用符を扱う方法
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.
何の操作それは私が使用できることを知っているself.b.find_element_by_xpath(".//*[contains(text(), '%s')]" % item_text)
で使用される前に、私はitem_text
に実行する必要があります式の前後に一重引用符を使用し、二重引用符を使用しますが、これは私が探している解決策ではありません。
ような何かをする必要があります[あなたはPythonで引用符をエスケープする方法について確認することができます](http://stackoverflow.com/a/3708167/3122133)の – Madhan
可能な重複[脱出する方法クライアント上のJavascriptで使用されるPythonのシングルクォートをサーバー上で使用する](http://stackoverflow.com/questions/3708152/how-to-escape-single-quotes-in-python-on-server-to-be-used) -in-javascript-on-clie) – Madhan