[Python-de] mit RegEx text extrahieren?
Guenther Sommermann
GueSo at gmx.ch
Fre Jul 4 19:09:26 EDT 2003
Ok, wenn das nicht so einfach geht, poste ich mal "ganz" genaue infos:
Im Grunde will ich mir ein Skript schreiben, das Titel und URL der
aktuellen Heise-News auf eine Website (soll nur lokal laufen)
schreibt. (Im moment hol ich mir erstmal nur die URL.)
(Vorweg: Das ganze könnte man wahrscheinlich am besten mit einem
XML-Parser machen (hab ich mir auch shcon angeschaut), aber da ich
grade erst anfange Python zu lernen is mir das noch zu hoch.....)
Dazu les ich mir das rdf-File vom Heise Newsticker ein:
hrdf = urllib.urlopen('http://www.heise.de/newsticker/heise.rdf').readlines()
RegEx erstellen:
hurl = re.compile('http://www.heise.de/newsticker/data/[a-z]+?-\d\d\.\d\d\.\d\d-\d\d\d')
Datei öffnen und schonmal n bisschen Html reinschreiben (soll ja ne
website werden)
f = open ("heise.html" ,"w")
f.write(" <html> \n <head> \n <title> <h>Aktuelle News </h></title> \n </head> \n <h1>HEISE NEWS</h1> \n \n")
htmlend = ("\n \n </body> \n </html>")
Durch die Zeilen gehen und die URL rausziehen:
for line in hrdf:
if hurl.search(line):
f.write("<br>")
f.write(line)
f.write(htmlend)
f.close
Das ganze funzt soweit auch schon, nur bekomme ich nicht nur die URL,
sondern die ganze Zeile in der die URL steht...
Die 'wichtigen' Zeilen in dem RDF-File sehen so aus:
<item>
<title>debitel-Chef zufrieden mit bisherigem Jahresverlauf</title>
<link>http://www.heise.de/newsticker/data/jk-04.07.03-008/</link>
</item>
deshalb hab ich auch gefragt, wie man etwas was zwischen 2 Html-Tags
steht extrahieren kann...
so, ich hoffe das reicht..
gruß Günther
-----
/"\ mailto: GueSo at gmx.ch
\ /
X ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
/ \