【问题标题】:Extract Data from XAML using Python使用 Python 从 XAML 中提取数据
【发布时间】:2019-10-31 04:13:12
【问题描述】:

我对 XAML 非常陌生,想知道使用 Python 从 XAML 文件中提取数据的方法(我知道 XML 模块的基本用法)。 例如其中一行是:

<Variable x:TypeArguments="sd:DataTable" Name="Yoko_Hara" />

从上面一行,我想提取这个变量的名字。

我尝试了以下代码并得到空输出:

> from xml.etree import cElementTree as ET
> 
> data = ET.parse("inputfile/main.xaml")     
> root = data.getroot() 
> for elem in root.iter('Variable'):
>     print(elem.text)

【问题讨论】:

    标签: python xml xaml elementtree treenode


    【解决方案1】:

    您需要使用属性访问它,即名称

    使用

    print(elem.attrib['Name']) 
    

    而不是

    print(elem.text)
    

    【讨论】:

      【解决方案2】:

      原因是因为您试图获取文本,即开始和结束标记之间的值。鉴于以下情况:

      <Variable Name="somename">Text</Variable>
      

      elem.text 产生“文本”。

      你真正需要的是属性部分,可以这样访问:

      from xml.etree import cElementTree as ET
      
      data = ET.parse("inputfile/main.xaml")     
      root = data.getroot() 
      for elem in root.iter('Variable'):
           print(elem.attrib['Name'])
      

      【讨论】:

        猜你喜欢
        • 2016-12-02
        • 2013-06-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-24
        • 2017-04-16
        • 2021-09-25
        • 2020-05-06
        相关资源
        最近更新 更多