0

大きな xml ファイル内に次の xml レコードがあります。

<Employee>
<id>999</id>
<fname>Tim</fname>
<lname>Boskin</lname>
</Employee>

Python で lxml および xpath を介して fname および lname 属性を取得しようとしています。次のステートメントは何も返しません。

fname = root.xpath('.//Employee[@id="999"]/fname')

私が見つけて試みたすべての例では、結果が得られませんでした。適切な構文は何でしょうか?

4

1 に答える 1

1

@idid という名前の属性の値を選択します。

そして、これがうまくいかない理由です。これを試して:

fname = root.xpath('//Employee[id/text()="999"]/fname')

id要素内に名前が付けられた属性がないためEmployee、代わりに要素の子要素になりEmployeeます。XPath 軸の詳細については、こちらをお読みください

于 2013-04-29T07:39:39.400 に答える