python - 如何使用美丽的汤选择一个类词
问题描述
我正在开发一个从页面中抓取数据的项目,但在尝试抓取的不是数据本身而是类名时遇到了问题,因为它用于在此地址https://books 设置书籍的评级。 toscrape.com/
当我得到数据时,它是这样的
{'class': ['star-rating', 'Three']}
{'class': ['star-rating', 'One']}
{'class': ['star-rating', 'One']}
{'class': ['star-rating', 'Four']}
这是一本字典,但我只对最后一个条目感兴趣,稍后我会将其保存到数据库中,并会检查那些评分高的条目。
如何忽略星级,只将最后的话存储在列表中?
PS - 这是我用来获得该结果的循环
for content in contents:
title = content.find('h3').text
price = content.find('p', class_='price_color').text
rating = content.find('p').attrs
这是设置 HTML 的方式
<p class="star-rating Three">
<i class="icon-star"></i>
<i class="icon-star"></i>
<i class="icon-star"></i>
<i class="icon-star"></i>
<i class="icon-star"></i>
</p>
解决方案
你不能从列表中得到最后的话吗?喜欢:
data['class'][1]
或者,为了确保获得最后一个:
data['class'][-1]
推荐阅读
- html - Bootstrap 下拉菜单不显示项目
- angular - 使用 ComponentModule 时找不到 Angular 组件
- java - Android Studio 应用程序崩溃,即使很清楚
- numpy - Georasters:RuntimeError:针对 API 版本 0xe 编译的模块,但这个版本的 numpy 是 0xd
- javascript - 网络实时抓取流聊天(puppeteer.js)
- c - 我正在尝试编写一个以特定字符串输入停止的程序
- webpack - 我安装了 webpack 但我的“build.js”是空的
- python - Python 使用精确解向量化均值回复过程向量
- python - 如何绘制多个 CSV 文件,每个类别都有单独的图
- javascript - 如何为 JavaScript 创建这种模式?