如何使用 bs4 获取 python 中带连字符的标签的值?

How can I get value of tags with hyphen in python with bs4?

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

SyntaxError : keyword can't be an expression

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

你能帮帮我吗?

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

然后您试图找到 "abc-xyz"

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

例如

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

我敢打赌你正在寻找一个看起来像这样的标签

<a abc-xyz="True" href="http://www.example.com">

如果我是对的,那你就想要

the_tag = .find("a", {"abc-xyz" : True})
value_of_abc_xyz = the_tag['abc-xyz']