2017-08-02 16 views
0

私はこのサンプルxmlをURLからpythonを使って解析しようとしていましたが、定義を抽出できません。ここに私の定義がどこにあることがあるので、私は「DT」タグにアクセスしようとしている Pythonでurl xmlを解析できません

<entry_list version="1.0"> 
    <entry id="polycystic kidney disease"> 
    <ew>polycystic kidney disease</ew> 
    <hw>polycystic kidney disease</hw> 
    <fl>noun</fl> 
    <def> 
     <sensb> 
     <sens> 
      <dt> Blah blah blah 
      </dt> 
     </sens> 
     </sensb> 
    </def> 
    </entry> 
</entry_list> 

のようにサンプルが見えるものです。これはxmlを含む短いバージョンのURLです。あなたの誰かが私を助けることができますか?

+1

のようにコードを投稿してはいけません動作するはずですが動作します画像。 –

+0

ElementTreeを試しましたか? https://stackoverflow.com/a/1912483/5031672 –

+0

@ZacharyBlackwoodはい私はElementTreeを見ましたが、あなたが与えた例とは違って値が関連付けられていないので、定義を抽出するのは苦労しています – danni1234

答えて

0

として

輸入xml.etree.ElementTreeあなたはBeautifulSoupをインストールする場合、このようなものが

from bs4 import BeautifulSoup 

xml = '''<entry_list version="1.0"> 
    <entry id="polycystic kidney disease"> 
    <ew>polycystic kidney disease</ew> 
    <hw>polycystic kidney disease</hw> 
    <fl>noun</fl> 
    <def> 
     <sensb> 
     <sens> 
      <dt> Blah blah blah 
      </dt> 
     </sens> 
     </sensb> 
    </def> 
    </entry> 
</entry_list>''' 

parsed = BeautifulSoup(xml) 

for dt in parsed.findAll("dt"): 
    print dt.contents 
+0

どうもありがとうございました! – danni1234

0

これはあなたのためのET

data = ''' 
<entry_list version="1.0"> 
    <entry id="polycystic kidney disease"> 
    <ew>polycystic kidney disease</ew> 
    <hw>polycystic kidney disease</hw> 
    <fl>noun</fl> 
    <def> 
     <sensb> 
     <sens> 
      <dt> Blah blah blah 
      </dt> 
     </sens> 
     </sensb> 
    </def> 
    </entry> 
</entry_list>''' 

flag = ET.fromstring(data) 
print flag.find('entry/def/sensb/sens/dt').text 
+0

私はコードを追加しました! – danni1234

関連する問題