我正在使用 BeautifulSoup。我必须找到对 <div>
的任何引用带有 ID 的标签:post-#
.
例如:
<div id="post-45">...</div>
<div id="post-334">...</div>
我试过了:
html = '<div id="post-45">...</div> <div id="post-334">...</div>'
soupHandler = BeautifulSoup(html)
print soupHandler.findAll('div', id='post-*')
如何过滤?
最佳答案
您可以将函数传递给 findAll :
>>> print soupHandler.findAll('div', id=lambda x: x and x.startswith('post-'))
[<div id="post-45">...</div>, <div id="post-334">...</div>]
或正则表达式:
>>> print soupHandler.findAll('div', id=re.compile('^post-'))
[<div id="post-45">...</div>, <div id="post-334">...</div>]
关于python - 匹配 BeautifulSoup 中的部分 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2830530/