Ответ 1
Вы можете указать вызываемый как фильтр:
dates = soup.findAll("div", {"id" : lambda L: L and L.startswith('date')})
Или как @DSM указывает
dates = soup.findAll("div", {"id" : re.compile('date.*')})
поскольку BeautifulSoup распознает объект RegExp и вызовет его метод .match()
.