python - 如何从中获取文本
使用 BeautifulSoup4 标记
问题描述
我正在抓取一些网页并尝试从所有人中获取简单的文本
<p> </p>
标签。在一个特定的例子中,我遇到了一个带有类的“p”标签:
<p class="SimpleBlock-module_p__Q3azD "> Some text here. </p>
现在使用一个简单的:
Text = soup.findAll("p")
结果是:
Text = SimpleBlock-module_p__Q3azD Some text here.
如何只获取上面 Text 中不包括类名的文本部分。
我想要一个通用的解决方案,无论“p”标签中是否有一个类,它都应该适用于所有情况。
我在 Windows 10 上使用 Python3、请求和 BeautifulSoup4。
解决方案
在 BeautifulSoup 4 中,findAll
不再存在 (bs3) 并被替换为find_all
find_all
给出了一个列表,因此在您的示例中,您应该使用以下方式访问它:
Text[0].string
推荐阅读
- javascript - 无法在 Javascript 中的数组中添加键值
- python - Python 中棘手的基线偏移
- swift - 如何在 swift UI 中的计算器 App 中创建字符串(格式:“%.f”)中的数字之间的间距
- python - 使用 BERT 示例输入错误
- python - 使用 Python 在我的家庭网络上获取设备的全名
- python - 在python中按列合并多个文本文件
- angular - 如何将 Angular 组件设置为 GridStack 小部件的内容?
- node.js - 更新猫鼬文档中的数组
- sql - 通过 Python 连接到 SQL Server
- r - Tidyverse 问题:为什么这个由 tribble 创建的 tibble 列不被识别?