Как мне проанализировать значения HTML href?Html

Программисты Html
Anonymous
Как мне проанализировать значения HTML href?

Сообщение Anonymous »

Я пишу простой веб-скребок, и для этого мне нужно анализировать ссылки. Я могу извлечь атрибут href из элементов и написал для них базовый парсер, вот его код:

Код: Выделить всё

links: list[str] # List of Href links, extracted from  elements
url: str # URL that these Hrefs came from
urldomain: str # Domain of the URL that these Hrefs came from

for link in links:
if link.startswith('/'):
if link.startswith('//'):
newlinks.append('http://' + link) # HTML
newlinks.append(urldomain + link)
elif link.startswith("http"):
newlinks.append(link)
elif link.startswith("https"):
newlinks.append(link)
if not link.startswith('http'):
if url.endswith('/'):
newlinks.append(url + '/' + link)
else:
newlinks.append('/'.join(url.split('/')[:-1]))
else:
newlinks.append(link)
Я знаю, это невероятно хакерски, но я просто не могу понять, как сделать это правильно. Я продолжаю находить вещи, которые не работают и просто не имеют смысла. Что мне не хватает?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ref-values

Вернуться в «Html»