2012-04-27 4 views
-2

ここではいくつかのコードです:lxmlの - クリーンオブジェクトを返す関数だけではなく、文字列

from lxml import etree 
url = 'http://www.google.com/ig/api?stock=aapl' 
data = etree.parse(url) 
root = data.getroot() 
finance = root[0] 


def clean(var, num): 
    var = str(finance[num].attrib).split("'")[-2] 
    print var 

私は私が後で呼び出すことができるオブジェクトとして変数を返すようにしたいと思います。

私は問題が何であるかを知っている - )(STR - しかし、直接変数を扱うようにそれを修正する方法がわからない私はに.attrib.split

+3

"後で呼び出すことができるオブジェクトとして変数を返したいと思います。"これをもっと詳しく説明してください。あなたはあなたのオブジェクトをどのように使いたいかの例を挙げることができますか?将来のソリューションをどのように活用したいかについて、最小のテストケースを提供してください。 – user1202136

+0

'var = finance [num] .attrib ['data']'を使って、あなたが何をするかを明確にします。 –

答えて

1

で必要な操作を行うことはできません。 、あなたはXMLから情報を収集したいと仮定すると:

data = dict() 
for elem in finance: 
    data[elem.tag] = elem.attrib['data'] 

あなたが好きdata変数に辞書を取得します:

{'symbol': 'AAPL', 'company': 'Apple Inc.', 'currency': 'USD', 'volume': '19145182' ... } 

あなたは特定の情報にアクセスすることができます:

print data['company'] 
+0

ありがとう!それはそれほど脆弱な方法ではありません。 – snakesNbronies

関連する問題