ElementTreeを使用して一連のXMLファイルを読み込み、解析します。ファイルが解析されるとき、私はそれからいくつかのビットのデータ(見出しとテキストの段落)をつかんでいます。私はその後、XMLに格納されているいくつかのファイル名を取得する必要があります。それらはContentItem
という要素に含まれています。Python開発 - elementtree XMLと文字列操作
私のコードは、ビットのようになります。今
for item in dirlist:
newsML = ET.parse(item)
NewsLines = newsML.getroot()
HeadLine = NewsLines.getiterator("HeadLine")
result.append(HeadLine)
p = NewsLines.getiterator("p")
result.append(p)
ci = NewsLines.getiterator("ContentItem")
for i in ci:
result.append(i.attrib)
ファイルの一種類のみがあった場合、これは罰金だったでしょうが、それは3つのタイプ(JPG、FLVやMP4)が含まれています。だから、私はそれらをループで見て、それはそれらを吐き出すが、私はただそれを望むなら、私はただFLVをつかむだけですか?またはちょうどmp4?それらは必ずしもリスト内で同じ順序で出現するとは限らない。
.mp4で終わるかどうかを判断する方法はありますか?この操作を行うか、それともテンプレートでもそれを行う方法はありますか?
これを行うとしたら、
url = i.attrib
if url.get("Href",()).endswith('jpg'):
result.append(i.attrib)
エラータプルオブジェクトには属性endswithがありません。なぜこれはタプルですか?私はそれが辞表だと思った?
どう.endswith 'について()'(http://docs.python.org/library/stdtypes.html#str.endswith)または '.splitext()'(のhttp://ドキュメント.python.org/library/os.path.html#os.path.splitext)? – arie
手順1:同じファイル名の問題を持つ他のすべてのユーザーを検索します。 http://stackoverflow.com/search?q=%5Bpython%5D+filename+match手順2:同様の質問を選択します。 http://stackoverflow.com/questions/296173/how-do-i-copy-files-with-specific-file-extension-to-a-folder-in-my-python-versio。ステップ3:他人が行ったことを読む。 –
これは、同じことをやろうとしているわけではありません。要素属性のテキストと照合したいだけです。 – Matthew