【问题标题】:updating python-elementtree to overcome xpath selector issue更新 python-elementtree 以克服 xpath 选择器问题
【发布时间】:2011-10-30 15:35:59
【问题描述】:

使用 ElementTree 在我的 xml 中搜索节点的属性时出现错误。

expected path separator ([)

源码为:

home_team_node = game_node.find( "team/team-metadata[@alignment='home']" )

关于 Stackoverflow 的讨论让我得出结论,我需要更新版本的 ElementTree。

ElementTree XPath - Select Element based on attribute

当我列出已安装的包时,我看到我有 python-elementtree 版本 1.2.6-14。然而,即使在运行 apt-get update 之后,任何升级 python-elementtree 的努力都会告诉我我已经获得了最新版本。我正在运行 Ubuntu 9.10,所以存储库可能没有 elementtree 1.3。

如何升级到 1.3 版?

【问题讨论】:

    标签: python packages apt aptitude


    【解决方案1】:

    lxml 是一个非常有用的 XML 解析库,它有完整的 ElementTree API 实现。尝试安装它:

    sudo apt-get install python-lxml
    

    然后您需要change your import statments 来使用lxml 版本,而不是捆绑的elementree

    (我会拒绝使用pipeasy_install,除非您在virtualenv 环境中,以避免与Debian 打包的Python 库混淆。)

    【讨论】:

    • 请注意,以可靠的跨平台方式构建/安装 lxml 可能是一个相当大的问题,尤其是在 OS X 上。
    【解决方案2】:

    尝试使用easy_installpip 安装lxml、ElementTree 或cElementTree。这些软件包可能比 apt 存储库中的软件包更新。

    HTH

    【讨论】:

    • easy_install elementtree 生成:搜索 elementtree 最佳匹配:elementtree 1.2.7-20070827-preview 处理 elementtree-1.2.7_20070827_preview-py2.6.egg elementtree 1.2.7-20070827-preview 已经处于活动状态easy-install.pth 中的版本 使用 /usr/local/lib/python2.6/dist-packages/elementtree-1.2.7_20070827_preview-py2.6.egg elementtree 的依赖处理完成 elementtree 的依赖处理
    • pip install --upgrade elementree 也得到了我 1.2.7
    猜你喜欢
    • 2016-03-12
    • 2019-05-13
    • 2021-12-10
    • 2010-09-18
    • 1970-01-01
    • 2014-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多