有没有办法从lxml的lxml.etree.iterparse中得到多个标签名?我有一个类似文件的对象,它具有昂贵的读取操作和许多标签,因此获取所有标签或执行两次传递并不是最佳选择。
编辑:类似于 Beautiful Soup 的 find(['tag-1', 'tag-2])
,除了作为 iterparse 的参数。想象一下为 <td>
解析一个 HTML 页面和 <div>
标签。
最佳答案
我知道我比赛迟到了,但也许其他人需要帮助解决同样的问题。
此代码将为 Tag1
和 Tag2
标签生成事件:
etree.iterparse(io.BytesIO(xml), events=('end',), tag=('Tag1', 'Tag2'))
https://stackoverflow.com/questions/3524444/