Heim  >  Artikel  >  Backend-Entwicklung  >  Wie extrahiere ich mit BeautifulSoup \'href\'-Attribute aus verschachtelten HTML-Elementen?

Wie extrahiere ich mit BeautifulSoup \'href\'-Attribute aus verschachtelten HTML-Elementen?

Linda Hamilton
Linda HamiltonOriginal
2024-10-28 17:52:29931Durchsuche

How to Extract 'href' Attributes from Nested HTML Elements Using BeautifulSoup?

So extrahieren Sie „href“-Attribute mit BeautifulSoup

Bei der Arbeit mit HTML-Daten kann das Abrufen spezifischer Informationen wie „href“-Attribute von entscheidender Bedeutung sein . In diesem Fall haben wir zwei Tags, eines mit verschachtelten Elementen, und das Ziel besteht darin, das „href“-Attribut aus dem „a“-Tag zu extrahieren und dabei den Textinhalt zu ignorieren.

Um dies mit BeautifulSoup zu erreichen, müssen Sie kann die Methode „find_all“ verwenden. Mit dieser Methode können Sie anhand verschiedener Kriterien, einschließlich Attributen, nach Tags suchen. Hier ist der Code:

from bs4 import BeautifulSoup

html = '''<a href="some_url">next</a>
<span class="class"><a href="another_url">later</a></span>'''

soup = BeautifulSoup(html)

for a in soup.find_all('a', href=True):
    print("Found the URL:", a['href'])

Dieser Code durchläuft alle „a“-Tags mit einem „href“-Attribut und gibt den Wert des „href“-Attributs für jedes Tag aus. Die Ausgabe lautet:

Found the URL: some_url
Found the URL: another_url

Wenn Sie alternativ alle Tags mit einem „href“-Attribut abrufen möchten, unabhängig von ihrem Namen, können Sie Folgendes verwenden:

href_tags = soup.find_all(href=True)

Diese Methode gibt eine Liste aller Tags mit einem „href“-Attribut im HTML-Dokument zurück.

Das obige ist der detaillierte Inhalt vonWie extrahiere ich mit BeautifulSoup \'href\'-Attribute aus verschachtelten HTML-Elementen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn