35

我有这个:

dates = soup.findAll("div", {"id" : "date"})

但是,我需要 id 作为通配符搜索,因为idcandate_1date_2

4

1 回答 1

80

您可以提供一个可调用对象作为过滤器:

dates = soup.findAll("div", {"id" : lambda L: L and L.startswith('date')})

或者正如@DSM 指出的那样

dates = soup.findAll("div", {"id" : re.compile('date.*')})

因为 BeautifulSoup 将识别 RegExp 对象并调用其.match()方法。

于 2013-01-10T12:16:20.390 回答