2017-02-28 6 views
0

私はすべてのタグ(タグのみ名)を印刷しようとしている、と私はとの問題を抱えているが、参加しますエラーは次のとおりです。
TypeError: join() takes exactly one argument (0 given)XMLからすべてのタグ名(タグのみ名)

+0

それはiを印刷するには私には無力ですリストと余分な文字なし。 例: 結果の1つ: "" 私はちょうど欲しい:pubDate – Barak

+0

なぜ正規表現ですか?どうして 'element.tag'はありませんか? – Parfait

+0

ありがとう、私はelement.tagでそれをやった。 – Barak

答えて

0
DEXML = urlopen('# the URL of the XML') 

tree_DE = ET.parse(DEXML) 

root_DE = tree_DE.findall('.//*') 
a = [] 

for element in list(set(root_DE)): 
    x = str(element) 
    seq = re.search("'[a-zA-Z]+'", x) 
    # add seq argument 
    m = ",".join(seq) 
    a.append(m) 

print(a) 
+0

seqをダウンロードしてインストールすることができません: 駆除:--no-install、--no-download、--build、および - no-cleanは非推奨です。 https://github.com/pypa/pip/issues/906を参照してください。 seqをダウンロード/アンパック 要求を満たすダウンロードが見つかりませんでした。seq クリーンアップ... seqのディストリビューションはありません C:\ Users \ barak-s \ pip \ pipのエラーのデバッグログを保存しています。 log – Barak

+0

seqは変数で、xyまたはbaraks_variable ....... joinが欠落しています。means = join(ここでは引数がありません)...... syntax:str.join(sequence) –

0

正しい方法:

PRD_XML = urlopen('URL.xml_1') 
DEX_ML = urlopen('URL.xml_2') 

for event, element in ET.iterparse(PRD_XML): 
    PRD_tags.append(element.tag) 

for event_2, element_2 in ET.iterparse(DEX_ML): 
    DE_tags.append(element_2.tag) 


def compare(): 
    if not [item for item in PRD_tags if item in DE_tags]: 
     return False 
    return True 

assert_false(compare(), "no match") 
関連する問題