使用beautifulsoup Python检查HTML中是否存在特定类
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用beautifulsoup Python检查HTML中是否存在特定类,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1061字,纯文字阅读大概需要2分钟。
内容图文
![使用beautifulsoup Python检查HTML中是否存在特定类](/upload/InfoBanner/zyjiaocheng/774/9975102f65344d20903e8b95bd3e8e58.jpg)
我正在写一个脚本,想要检查html中是否存在特定的类.
from bs4 import BeautifulSoup
import requests
def makesoup(u):
page=requests.get(u)
html=BeautifulSoup(page.content,"lxml")
return html
html=makesoup('https://www.yelp.com/biz/soco-urban-lofts-dallas')
print("3 star",html.has_attr("i-stars i-stars--large-3 rating-very-large")) #it's returning False
res = html.find('i-stars i-stars--large-3 rating-very-large")) #it's returning NONE
请指导我如何解决这个问题?如果我得到冠军(title =“3.0星级”),这对我也有用.控制台HTML 的屏幕截图
<div class="i-stars i-stars--large-3 rating-very-large" title="3.0 star rating">
<img class="offscreen" height="303" src="https://s3-media1.fl.yelpcdn.com/assets/srv0/yelp_design_web/8a6fc2d74183/assets/img/stars/stars.png" width="84" alt="3.0 star rating">
</div>
解决方法:
has_attr是一种检查元素是否具有所需属性的方法. class是一个属性,i-stars i-stars – large-3 rating-very-large是它的值.
find期望CSS selectors,而不是类值.所以你应该使用html.find(‘div.i-stars.i-stars – large-3.rating-very-large’).这是因为您正在寻找包含所有这些类的div.
内容总结
以上是互联网集市为您收集整理的使用beautifulsoup Python检查HTML中是否存在特定类全部内容,希望文章能够帮你解决使用beautifulsoup Python检查HTML中是否存在特定类所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。