我在测试xhtml文档中的搜索特性时遇到了一个问题。搜索应该支持阿拉伯文和英文文本。我对python和libxml2并不熟悉,所以我很难搞清楚如何做到这一点。
我总是在阿拉伯语文本中得到一个空的结果(在英语中它工作得很好),即使像http://www.freeformatter.com/xpath-tester.html#ad-output这样的在线工具返回我所需要的确切结果。
import libxml2
doc = libxml2.parseFile("content.xhtml")
ctxt = doc.xpathNewContext()
xPathQuery = "//*[contains(text(), 'تجربة')]"
res = ctxt.xpathEval(xPathQuery)
doc.freeDoc()
ctxt.xpathFreeContext()此外,使用Unicode字符串也不起作用:
xPathQuery = u"//*[contains(text(), 'تجربة')]"甚至:
xPathQuery = u"//*[contains(text(), 'تجربة')]"
res = ctxt.xpathEval(xPathQuery.encode('utf-8'))发布于 2014-11-05 08:17:19
这是代码文件本身的一个问题,我用Unicode保存了它,它工作了。
https://stackoverflow.com/questions/26086091
复制相似问题