2017-12-21 79 views
0

を検索するいくつかの属性が、私はHTMLコードで属性を持つすべてのタグ「A」を見つけたい「クラス」等しい「ボタンBTN-1-小さな」OR属性「クラス「ボタンベータコールアウトbtn-1-small」と同じです。私のコードは次のとおりです。美しいスープ - 美しいスープ

alltd = soup.find_all('a', {'class':'button btn-1-small'}, {'class':'button 
beta-callout btn-1-small'}) 

私は一つだけ条件(「クラス」のための一つの値)を持っているとき、私のコードは完璧に動作しますが、私は2つの条件を持っているしたい場合、それはもう動作しません。

条件 "OR"の書き方を知っていますか?クラスの値のいずれか他の1

のいずれかを持っているためにありがとうございました。

あなたのケースでは、LCS

答えて

1

'button btn-1-small'はちょうどsoup.find_all('a', {'class': 'btn-1-small'})は、両方の要素を返すことを意味複数のクラスを、持っています。

しかし、一つのクラスを持つ要素または他のを見つけることが、あなたの代わりにリストを渡すと思います。

あなたのようにHTMLを持っているのであれば:

<a href="#" class="foo">Test 1</a> 
<a href="#" class="bar">Test 2</a> 

あなたはとのどちらかを選択できます。リストとのソリューションは完璧に動作

soup.find_all('a', {'class': ['foo', 'bar']}) 
+0

、どうもありがとうございました。 – Skyly83