首页 > 解决方案 > 如何在带有 bs4 的 python 中获取带有连字符的标签的值?

问题描述

我正在为我的学校项目使用带有模块 bs4 的 python,但我有一个问题。我想从标签中获取一个值,但这个标签包含破折号 (-)。我想不通。显然,我得到了语法错误:

SyntaxError : 关键字不能是表达式

...
...
print(papers[0].find("a", abc-xyz = True)["abc-xyz"])

请你帮助我好吗?

标签: pythonweb-scrapingbeautifulsoupweb-crawler

解决方案


abc并且xyz在您的代码中使用表达式(减法)并设置为True,这是错误的。

然后你试图找到"abc-xyz".

您所要做的就是abc-xyz = True使用适当的属性进行修复。查看文档

例如

print(papers[0].find("a", {"abc-xyz": True})["abc-xyz"])

推荐阅读