2013-01-10 27 views

Trả lời

36

Bạn có thể cung cấp một callable như một bộ lọc:

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

Hoặc như @DSM chỉ ra

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

vì BeautifulSoup sẽ nhận dạng đối tượng RegExp và gọi phương thức .match() của nó.

+1

Điều đó cho tôi một lỗi "'NoneType' đối tượng không có thuộc tính bắt đầu với" – user984003

+0

@ user984003 okies - không chắc chắn điều gì gây ra - cập nhật bài đăng –

+1

Bạn cũng có thể chuyển một regex, như 're.compile ('date * ') '. – DSM

Các vấn đề liên quan