web-dev-qa-db-ja.com

Python BeautifulSoup findAll by "class" attribute

私は次のコードを実行したいのですが、これはBSのドキュメントに書かれていることです。唯一の問題は、Wordの「クラス」が単なるWordではないということです。これはHTML内にありますが、pythonキーワードなので、このコードでエラーが発生します。

では、どうすれば次のことができますか?

soup.findAll('ul', class="score")
12
appleLover

あなたの問題は、スープでfind_allが文字列と完全に一致するものを見つけることを期待していることです。 実際に

特定のCSSクラスに一致するタグを検索すると、そのCSSクラスのいずれかに対して一致します。

@alKidが言ったように、クラスタグを適切に検索できます。 class_キーワード引数を使用して検索することもできます。

soup.find_all('ul', class_="score")
17
mattexx

これを行う方法は次のとおりです。

soup.find_all('ul', {'class':"score"})
10
aIKid