gpt4 book ai didi

python - Beautifulsoup - 如何获取某个类的 block 内的所有链接?

转载 作者:太空宇宙 更新时间:2023-11-03 11:21:53 24 4
gpt4 key购买 nike

我有以下 HTML Dom:

    <div class="meta-info meta-info-wide"> <div class="title">Разработчик</div> <div class="content contains-text-link"> 

<a class="dev-link" href="http://www.jourist.com&amp;sa=D&amp;usg=AFQjCNHiC-nLYHAJwNnvDyYhyoeB6n8YKg" rel="nofollow" target="_blank">Перейти на веб-сайт</a>

<a class="dev-link" href="mailto:info@jourist.com" rel="nofollow" target="_blank">Написать: info@jourist.com</a>

<div class="content physical-address">Diagonalstraße 41
20537 Hamburg</div> </div> </div>

我需要在 div.meta-info-wide block 内获取类 dev-link 的所有链接(url)。

我试过这种明显的方法,但不起作用:

divTag = soup.find_all("div", {"class":"meta-info-wide"})
print(len(divTag))

for tag in divTag:
tdTags = tag.find_all("a", {"class":"dev-link"})
for tag in tdTags:
print tag.text

最佳答案

尝试以下操作:

import bs4

html = """
<div class="meta-info meta-info-wide"> <div class="title">Разработчик</div> <div class="content contains-text-link">
<a class="dev-link" href="http://www.jourist.com&amp;sa=D&amp;usg=AFQjCNHiC-nLYHAJwNnvDyYhyoeB6n8YKg" rel="nofollow" target="_blank">Перейти на веб-сайт</a>
<a class="dev-link" href="mailto:info@jourist.com" rel="nofollow" target="_blank">Написать: info@jourist.com</a>
<div class="content physical-address">Diagonalstraße 4120537 Hamburg</div> </div> </div>"""

soup = bs4.BeautifulSoup(html, "html.parser")

for div in soup.find_all("div", {"class":"meta-info-wide"}):
for link in div.select("a.dev-link"):
print link['href']

这给你:

http://www.jourist.com&sa=D&usg=AFQjCNHiC-nLYHAJwNnvDyYhyoeB6n8YKg
mailto:info@jourist.com

select()用于返回所有具有 dev-link 类的 a 标签。当涉及两个或多个 CSS 类时,建议使用此方法。

使用 BeautifulSoup 4.5.1、Python 2.7.12 测试

关于python - Beautifulsoup - 如何获取某个类的 block 内的所有链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41237467/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com