Soup Sieve 是一个 CSS 选择器库,旨在与 Beautiful Soup 4 一起使用。它旨在提供使用现代 CSS 选择器的选择、匹配和过滤功能。Soup Sieve 目前提供了从 CSS Level 1 规范到最新的 CSS Level 4 草案及更高版本的选择器(尽管其中一些尚未实现)。
Soup Sieve 的编写旨在取代 Beautiful Soup 内置的 select 功能,并且自 Beautiful Soup 4.7.0 版本起,它现在已成为其一部分 🎊。Soup Sieve 也可以被导入,以便直接使用其 API 进行更受控、更专业的解析。
Soup Sieve 已实现大多数 CSS 选择器,直到最新的 CSS 草案规范,尽管有许多选择器在非浏览器环境中没有意义。无法提供有意义功能的选择器根本不会匹配任何内容。支持的一些选择器包括:
.classes#ids[attributes=value]parent childparent > childsibling ~ siblingsibling + sibling:not(element.class, element2.class):is(element.class, element2.class)parent:has(> child)- 以及 更多
您必须已安装 Beautiful Soup:
pip install beautifulsoup4
在大多数情况下,假设您已安装 4.7.0 版本,您只需执行此操作即可。但如果您通过其他替代方法安装,并且 Soup Sieve 未自动安装,您可以直接安装它:
pip install soupsieve
如果您想从源代码手动安装,请首先确保安装了 build:
pip install build
然后导航到项目根目录并构建 wheel 文件并安装(将 `ver` 替换为当前版本):
python -m build -w
pip install dist/soupsieve-<ver>-py3-none-any.whl
文档在此处: https://facelessuser.github.io/soupsieve/。
MIT