python - beautifulsoup find_all() 类快捷方式不起作用

标签 python html parsing beautifulsoup

我正在尝试查找具有 column 类的所有 p 标签。

<p class="column">This is a column</p>
<p class="column">More columns heh</p>

我试过:

soup.find_all(class_='column')

它返回了 []

然后我尝试了:

soup.find_all(attrs={'class': 'column'})

并得到了正确的结果。

这两个语句不应该相同吗?有什么区别?

最佳答案

(这是我对 Stack overflow 的第一个回答,所以我有点紧张!)

正如其他人所说,这两者完全相同。唯一的问题是您使用的是旧版本的 Beautiful Soup。 正如它所说 HERE .

In older versions of Beautiful Soup, which don’t have the class_ shortcut, you can use the attrs trick mentioned above. Create a dictionary whose value for “class” is the string (or regular expression, or whatever) you want to search for.

希望对您有所帮助!

关于python - beautifulsoup find_all() 类快捷方式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14430207/

相关文章:

python - 使用 pybind11 嵌入 python。虚拟环境不行

从 YAML 传递数据连接 MYSQL 数据库时,Python 抛出 'ProgrammingError: 1045'

python - 获取不属于不同模型的多对多关系的对象?

parsing - yacc shift-reduce 用于不明确的 lambda 语法

Java SimpleDatetime 解析

python - Beautiful Soup 的 XML 数据不完整

python - 当开始和结束长度相同时匹配的正则表达式

html - 当您在 css 中调整响应式网格大小时,某些图像会被隐藏

javascript - 如何将 jQuery 插件应用于同一页面上的多个 div?

html - 如何使用 html5 和文件 API 将单个文件从一个客户端浏览器发送到另一个客户端浏览器而不将其保存在服务器 (node.js) 上