/ / Extrahieren von URL aus Quellcode mit Python 3 - Python, HTML, Python-3.x, HTML-Parsing

Extrahieren von URL aus Quellcode mit Python 3 - Python, HTML, Python-3.x, HTML-Parsing

Meine Frage bezieht sich auf den folgenden: Wie URL aus HTML-Anchor-Element mit Python3 extrahieren?

Was passiert, wenn ich die genaue URL nicht kenne und nur ein Schlüsselwort habe, das in der URL enthalten sein sollte? Wie extrahiere ich dann die URL aus der Seitenquelle?

Antworten:

2 für die Antwort № 1

Benutze ein HTML-Parser.

Im Falle von BeautifulSoup, Sie können eine passieren Funktion als Schlüsselwort-Argumentwert:

from bs4 import BeautifulSoup

word = "test"
data = "your HTML here"
soup = BeautifulSoup(data)

for a in soup.find_all("a", href=lambda x: x and word in x):
print(a["href"])

Oder ein regulären Ausdruck:

import re

for a in soup.find_all("a", href=re.compile(word)):
print(a["href"])

Oder mit a CSS selector:

for a in soup.select("a[href^="{word}"]".format(word=word)):
print(a["href"])

1 für die Antwort № 2

Versuchen Sie, regulären Ausdruck zu verwenden

import re
re.findall(r"(?i)href=[""]([^s""<>]+)", content)