Python BeautifulSoup:按名称查找与一个标记匹配的任何标记,或按属性查找与另一个标记匹配的任何标记
我想查找Python BeautifulSoup:按名称查找与一个标记匹配的任何标记,或按属性查找与另一个标记匹配的任何标记,python,beautifulsoup,Python,Beautifulsoup,我想查找或的所有标记。我尝试了bs.find_all(['h1','div'],attrs={'class':'abc'}),但这将忽略标记:显然,attrs参数将AND条件应用于搜索(这意味着标记必须属于标记名列表,并且具有给定的属性,而标记不满足该属性) 有人能建议解决这个问题吗?谢谢。也许你可以用 从bs4导入美化组作为bs 从io导入StringIO data=”“” 测试1 测试2 测试3 """ soup=bs(StringIO(数据),'html.parser') 打印(soup.
或
的所有标记。我尝试了bs.find_all(['h1','div'],attrs={'class':'abc'})
,但这将忽略
标记:显然,attrs
参数将AND条件应用于搜索(这意味着标记必须属于标记名列表,并且具有给定的属性,而
标记不满足该属性)
有人能建议解决这个问题吗?谢谢。也许你可以用
从bs4导入美化组作为bs
从io导入StringIO
data=”“”
测试1
测试2
测试3
"""
soup=bs(StringIO(数据),'html.parser')
打印(soup.select('h1,div[class=“abc”]))
打印(soup.find_all(['h1','div'],attrs={'class':'abc'}))
输出
[<h1>Test 1</h1>, <div class="abc"><p>Test 3</p></div>]
[<div class="abc"><p>Test 3</p></div>]
[测试1,测试3]
[测试3]
可能是您可以使用的
从bs4导入美化组作为bs
从io导入StringIO
data=”“”
测试1
测试2
测试3
"""
soup=bs(StringIO(数据),'html.parser')
打印(soup.select('h1,div[class=“abc”]))
打印(soup.find_all(['h1','div'],attrs={'class':'abc'}))
输出
[<h1>Test 1</h1>, <div class="abc"><p>Test 3</p></div>]
[<div class="abc"><p>Test 3</p></div>]
[测试1,测试3]
[测试3]
将两个结果连接起来怎么样,比如bs.find_-all('h1')+bs.find_-all(['div',attrs={'class':'abc'})
?将两个结果连接起来,比如bs.find_-all('h1')+bs.find_-all(['div',attrs={'class':'abc'})
?你不能只搜索两次吗?