Html 在beautiful soup的find()方法中提到类名,但不要提到标记名
使用Beauty soup,我希望从以下HTML代码中获得90%的文本:Html 在beautiful soup的find()方法中提到类名,但不要提到标记名,html,web-scraping,beautifulsoup,Html,Web Scraping,Beautifulsoup,使用Beauty soup,我希望从以下HTML代码中获得90%的文本: <div class="meter-value"> <span class="superPageFontColor" style="vertical-align:top">90%</span> </div> 但是我意识到即使你不指定标签名 soup.find(class_={class-name}) 我
<div class="meter-value">
<span class="superPageFontColor" style="vertical-align:top">90%</span>
</div>
但是我意识到即使你不指定标签名
soup.find(class_={class-name})
我得到了同样的结果。那么,代码行呢
soup.find(class_="meter-value").find('span').contents[0]
返回值90%,与以下正确格式相同
soup.find('div',class_="meter-value").find('span').contents[0]
我的问题是,在这种情况下,我仍然应该指定标记名有什么好的理由吗?通常,您希望指定尽可能少的信息。因此,如果没有任何其他带有
class=“meter value”
的标记(例如
,
等),我将使用soup.find(class=“meter value”)
。你甚至不需要.find('span')。contents[0]
下一步,soup.find(class='meter-value')。get_text(strip=True)
就足够了。
soup.find('div',class_="meter-value").find('span').contents[0]