lec*_*tif 13 python xml search xpath full-text-search
任务
我想使用Python来对XML数据进行全文搜索.
示例数据
<elements>
<elem id="1">some element</elem>
<elem id="2">some other element</elem>
<elem id="3">some element
<nested id="1">
other nested element
</nested>
</elem>
</elements>
Run Code Online (Sandbox Code Playgroud)
基本功能
我想要的最基本的功能是在XPath中搜索"other"("/ elements/elem")至少返回匹配元素(elem 2)的ID属性值和嵌套元素(elem 3,嵌套) 1)或匹配的XPath.
理想的功能
解决方案应该灵活且可扩展.我正在寻找这些功能的可能组合:
题
我不希望有一个具有所有理想功能的解决方案,我必须结合不同的现有功能并自己编写代码.但首先我想更多地了解那里有什么,你通常会使用哪些库和方法,它们的优点和缺点是什么.
编辑:感谢您的答案到目前为止,我添加了细节并开始了赏金.
不确定这是否足以满足您的需求,但lxml支持xpath中的正则表达式(意思是:您可以使用xpath 1.0加上正则表达式的EXSLT扩展函数)
与稍后添加的功能列表相比:
满足我所看到的所有请求的唯一方法是将文件加载到支持"真实"全文搜索的本机xml数据库(可能通过XQuery Fulltext)并使用它.(不能帮助你更进一步,也许Sedna,似乎有一个python API,似乎支持全文搜索?)