Python libxml2中的Unicode

Python libxml2中的Unicode,python,unicode,libxml2,Python,Unicode,Libxml2,我有一个问题,我正在尝试测试xhtml文档中的搜索功能。搜索应支持阿拉伯语和英语文本。我是python和libxml2的新手,所以我很难弄清楚怎么做 我总是得到一个阿拉伯文本的空结果(在英语中它工作得很好),即使在线工具,如返回我需要的确切结果 import libxml2 doc = libxml2.parseFile("content.xhtml") ctxt = doc.xpathNewContext() xPathQuery = "//*[contains(text(), 'تجر

我有一个问题,我正在尝试测试xhtml文档中的搜索功能。搜索应支持阿拉伯语和英语文本。我是python和libxml2的新手,所以我很难弄清楚怎么做

我总是得到一个阿拉伯文本的空结果(在英语中它工作得很好),即使在线工具,如返回我需要的确切结果

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'))

事实证明,这是代码文件编码本身的问题,我用Unicode保存了它,它成功了。

是的,我更新了问题。仍然不起作用,thanx:)