Juanjo Conti
Juanjo Conti

Reputation: 30023

Extract divs with at least one class in BeautifulSoup

Supose you have a web page with a lot of this:

<div class="story cid-8797378263432 l-es headline-story thumbnail-true">

where cid-nnnnnnnnnnnn class can vary. How would you get all the divs with BeautifulSoup?

I tried:

soup.find('div', {'class': 'story'})

but that didn't work. Seems to look for the divs with ONLY the story class.

Upvotes: 2

Views: 289

Answers (2)

Brandon O&#39;Rourke
Brandon O&#39;Rourke

Reputation: 24625

Or you can just use soup.findAll('div', 'story') which doesn't seem to have that bug.

Upvotes: 1

Boldewyn
Boldewyn

Reputation: 82734

It's a bug: Launchpad bug report. The report also contains a workaround:

soup.findAll('div', {'class': re.compile(r'\bstory\b')})

Upvotes: 0

Related Questions