html 如何使用bs4来解析锚标记的文本描述,特别是当href链接断开时?

gpfsuwkq  于 2023-03-11  发布在  其他
关注(0)|答案(1)|浏览(98)

我正在练习使用BS4来解析HTML文件。我遇到了一个问题,但我似乎在任何地方都找不到解决方案。我该如何解析锚标记的内部?我尝试指定“href”标记,但链接有一些额外的字符,这打破了href标记。
例如,我试图解析这个链接到我的一个老问题:

<a href = "https://stackoverflow.com/questions/61925957/using-an-api-to-create-data-in-a-react-table" style=
=3D"color: #FFFFFF;font-size: 15px;"> >

但是,相反,它有一些字符,打破了标签:

<a href = "https://stackoverflow.com/&amp=3D"questions/61925957"=3D"/using-an-api-to-create-data-in-a-react-table" style=
=3D"color: #FFFFFF;font-size: 15px;" >

我如何使用bs4得到这个标记的内部,以便我可以修剪它并得到我的最终链接?我还想忽略样式、颜色和字体大小描述符。

r1zhe5dt

r1zhe5dt1#

我无法重现该问题,但该方法效果良好:

from bs4 import BeautifulSoup

html_sample = """<a href = "https://stackoverflow.com/questions/61925957/using-an-api-to-create-data-in-a-react-table" style=
=3D"color: #FFFFFF;font-size: 15px;"> >"""

soup = BeautifulSoup(html_sample, "lxml").select_one("a")["href"]
print(soup)

输出:

https://stackoverflow.com/questions/61925957/using-an-api-to-create-data-in-a-react-table

相关问题