Seite 1 von 1
Links aus HTML auslesen
Verfasst: Montag 19. Februar 2007, 20:28
von danims
Hallo
Nach längerem Suchen bin ich trotzdem nicht fündig geworden.
Ich möchte sämtliche "Link-Konstrukte" einer HTML Seite auslesen.
Die Datei auslesen funktioniert soweit:
Code: Alles auswählen
import urllib
import re
fp = urllib.urlopen(http://........html)
data = fp.read()
Jetzt hat die html seite aber unterschiedliche anzahl an hyperlinks:
<a href="
LINK">
BESCHREIBUNG</a>
Die kursiv-fetten Angaben möchte ich irgendwie in einem Array haben.
Hat jemand eine Idee oder hat jemand ein Scriptbeispiel zur hand für mich, Python anfänger

?
Besten Dank!
Verfasst: Montag 19. Februar 2007, 20:41
von SigMA
benutzt die Forumsuche!
Dafür gibt es 100% eins!
SigMA
Verfasst: Montag 19. Februar 2007, 20:45
von rayo
HI
Beautiful Soup ist was für dich
Gruss
Re: Links aus HTML auslesen
Verfasst: Montag 19. Februar 2007, 20:45
von sape
Hi und willkommen im Forum:
Lade dir
BeautifulSoup runter und lese dir die
documentation durch. Das Modul ist richtig gut und intuitive (IMHO) benutzbar

-- Selten so ein einfaches zu benutzendes Modul gesehen, für ein nicht so ganz Triviales Thema.
lg
Verfasst: Montag 19. Februar 2007, 20:45
von danims
ja, den da:
http://www.python-forum.de/topic-3916.h ... s+auslesen
aber damit komm ich irgendwie auch nicht weiter

Verfasst: Montag 19. Februar 2007, 23:32
von gerold
Hallo danims!
Ich bin mal so frei...
http://www.python-forum.de/topic-4664.html
mfg
Gerold

Verfasst: Freitag 15. Februar 2008, 21:10
von stasikz
Hallo Community!
ich stehe wieder vor einem Problem. Ich würde gerne die Links aus einer HTML datei auslesen, die als href="....." nur bestimme Adressen haben. Also nur die Adressen rausfiltern, die in meine Suchmaske passen.
Ich hab schon dieses kleine Tutorial angesehen, aber leider kann ich das noch nicht auf mein Problem anwenden

Bitte um die Hilfe
Edit: habs doch hingekriegt. ich hätte besser von Anfang an die BeautifulSoup Anleitung zu ENDE lesen sollen

hab das so gemacht:
Code: Alles auswählen
import re
from BeautifulSoup import BeautifulSoup, SoupStrainer
html_file = open('datei.html')
soup = html_file.read()
html_file.close()
links = SoupStrainer('a', href=re.compile('www.bestimme/adresse/de/'))
adressen = [adr for adr in BeautifulSoup(soup, parseOnlyThese=links)]
for i in adressen:
print i