Vous devez utiliser lxml . Il fonctionne avec plusieurs valeurs de classe séparées par des espaces ('class1 class2').
En dépit de son nom, lxml sert également à analyser le HTML et à en extraire les données. Il est beaucoup, beaucoup plus rapide que BeautifulSoup, et il traite même le HTML "cassé" mieux que BeautifulSoup (son titre de gloire). Il a une API de compatibilité pour BeautifulSoup aussi si vous ne voulez pas apprendre l'API lxml.
Ian Bicking est d'accord et préfère lxml à BeautifulSoup.
Il n'y a plus aucune raison d'utiliser BeautifulSoup, à moins que vous ne soyez sur Google App Engine ou quelque chose d'autre où tout ce qui n'est pas purement Python n'est pas autorisé.
Vous pouvez même utiliser des sélecteurs CSS avec lxml, ce qui le rend beaucoup plus facile à utiliser que BeautifulSoup. Essayez de jouer avec dans une console Python interactive.