recv_data = '''<RECOGOUT> <SHYPO RANK="1" SCORE="-1874.638672" GRAM="0"> <WHYPO WORD="<s>" CLASSID="3" PHONE=" silB " CM="1.000"/> <WHYPO WORD="金" CLASSID="0" PHONE="k i m u" CM="0.980"/> <WHYPO WORD="に" CLASSID="1" PHONE="n i" CM="1.000"/> <WHYPO WORD="行って" CLASSID="2" PHONE="i q t e" CM="1.000"/> <WHYPO WORD="</s>" CLASSID="4" PHONE="silE" CM="1.000"/> </SHYPO> </RECOGOUT>''' def word(recv_data): for line in recv_data.split('\n'): index = line.find('WORD="') if index!=-1: line = line[index+6:line.find('"',index+6)] if(line!='<s>' and line!='</s>'): yield line print (''.join(word(recv_data)))
recv_dataにxmlデータをインプットしたい。
いろいろな人にご回答いただいた。
その結果、
import xml.etree.ElementTree as ET # xmlファイルの読み込み recv_data = ET.parse('output.xml')
でインプットすることが分かった。
サンプルでは実行できたが自分の環境のxmlでは実行できない。
このxmlをインプットするためにはどのようなコードを直せばよいのでしょうか。
<RECOGOUT> <SHYPO RANK="1" SCORE="-1874.638672" GRAM="0"> <WHYPO WORD="<s>" CLASSID="3" PHONE=" silB " CM="1.000"/> <WHYPO WORD="金" CLASSID="0" PHONE="k i m u" CM="0.980"/> <WHYPO WORD="に" CLASSID="1" PHONE="n i" CM="1.000"/> <WHYPO WORD="行って" CLASSID="2" PHONE="i q t e" CM="1.000"/> <WHYPO WORD="</s>" CLASSID="4" PHONE="silE" CM="1.000"/> </SHYPO> </RECOGOUT>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/03 05:42