2017-03-16 17 views
0

ファイル内のjson配列から特定のキーの値を抽出しようとしています。キーから値をextrcatしようとしていますが、キーがjson配列のどこでも利用可能です。ここで私が使用していたコードは次のとおりです。JSON Python3.6での解析で問題が発生する

from xml.dom.minidom import parseString 
import json   
def bar(somejson, key): 
    def val(node): 
     # Searches for the next Element Node containing Value 
     e = node.nextSibling 
     while e and e.nodeType != e.ELEMENT_NODE: 
      e = e.nextSibling 
     return (e.getElementsByTagName('string')[0].firstChild.nodeValue if e 
       else None) 
    # parse the JSON as XML 
    foo_dom = parseString(xmlrpclib.dumps((json.loads(somejson),))) 
    # and then search all the name tags which are P1's 
    # and use the val user function to get the value 
    return [val(node) for node in foo_dom.getElementsByTagName('name') 
      if node.firstChild.nodeValue in key] 

この私が質問から持っている:今、私はxmlrpclibで任意のエラーを取得していますHow can I use python finding particular json value by key?
。なぜ来るのか分からない。 pipを使用してパッケージを入手しようとしましたが、そのようなパッケージはインストールできません。
どうすればいいですか?データの例は、上記の質問リンクと同じです。

+0

あなたは 'xmlrpclib'ライブラリをインポートしていますか?ところで、このライブラリは[PyPi'](https://pypi.python.org/pypi/xmlrpclib)にあります –

+0

@MoinuddinQuadriどうすればインストールできますか?私はセットアップしようとしましたが、私のプログラムでそれを使用する方法がありませんでした。助けてください。 –

+0

@JafferWilsonあなたは私の答えを見ましたか?これはまだ標準ライブラリの一部です。 – Vallentin

答えて

0

Python 3ではxmlrpclibというライブラリの名前がxmlrpcに変更されました。 dumpsは現在xmlrpc.clientにあります。

import xmlrpc.client as xmlrpclib 

をかxmlrpc.client.dumpsimport xmlrpc.clientxmlrpclib.dumpsを置き換える:だからあなたの問題を解決するためのいずれかを行います。

+0

ありがとう、これは多くの.. .. :) –

関連する問題