私のアプリケーションでは、Amazon から xml で情報を受け取ります。そのため、simplexml で値を読み取ってアクセスします。
私の問題は、同じ名前を持つ複数の近隣文字列にアクセスしたい場合です。例 :
<ItemAttributes>
<Author>Brian Herbert</Author>
<Author>Kevin J Anderson</Author>
<Author>Frank Herbert</Author>
<Binding>Paperback</Binding>
<EAN>9782221088913</EAN>
3人の作家が欲しい!フランクとブライアン・ハーバート、そしてアンダーソンも。
各コマンドを起動したときの結果は次のとおりです。
>>> for cle in xml['ItemSearchResponse']['Items']['Item'][1]['ItemAttributes'].values():
... print cle
...
749782221088913
Robert Laffont
2221088913
9782221088913
Frank Herbert
{u'EANListElement': u'9782221088913'}
>>> for item in enumerate(xml['ItemSearchResponse']['Items']['Item'][1]['ItemAttributes']['Author']):
... print item
...
F
r
a
n
k
H
e
r
b
e
r
t
だから私はリストの最後の項目だけにアクセスしますが、いくつかあります。どのようにできるのか ?PHP では、「foreach author in xml['...']['Author']; print author」を実行しましたが、うまくいきました。ここで、この解決策は私が書いた2番目のものであり、期待した結果が得られません! 著者の名前に1つずつアクセスする方法はありますか? ありがとう !