首页 > 解决方案 > 如何使用 BeautifulSoup 读取元素属性?

问题描述

我正在尝试在具有文本“关于”的 html 页面中查找所有标签。为了得到这个结果,我使用了这个:

text = page.body.find(string=re.compile('About'))
parent=about.parent
link=parent.href

text是组成短语“关于我”的 8 个字母的列表,这让我感到惊讶。更令人惊讶的是,如果我打印text结果是没有间隙的“关于我”这个短语,因为它不是一个列表而是一个变量。

变量parent导致:

<a class="menu__link" href="/about-us" title="">About Us</a>

如您所见,父母(a 标签)具有href属性。但是变量“link”的结果是 None 而不是href属性。到底是怎么回事?

请问有什么不清楚的

标签: pythonbeautifulsoup

解决方案


欢迎来到 SO。

如果我正确理解您的问题,则您不确定如何访问元素的属性。

这应该可以解决问题:

link = parent['href']

快乐编码:)


推荐阅读