Python libxml2中的Unicode

2024-10-03 15:23:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个问题,我正在尝试测试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'))

Tags: text文档文本功能httpdocwwwres