提取美丽汤表中的所有链接



<td style="text-align: center;"><a title="Some title" href="https://www.blabla.com">Testing</a></td>

我正在尝试使用BeautifulSoup来获取a标签中的所有href,它们是td标签的子标签。

我可以运行

urls = [x for x in soup.findAll("td")]

获取所有的td标签,然后手动循环查看它们是否包含a标签,如果包含,则提取href,但有没有更干净的方法可以在一行中完成此操作?

尝试使用:has()CSS选择器来选择所有具有<a>标记的td标记。

from bs4 import BeautifulSoup
html = """<td style="text-align: center;"><a title="Some title" href="https://www.blabla.com">Testing</a></td>"""
soup = BeautifulSoup(html, "html.parser")
print([tag.find("a")["href"] for tag in soup.select("td:has(a)")])

输出:

['https://www.blabla.com']

最新更新