PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mit PHP HTML Parsen



Campeòn
19.01.2012, 15:55:09
Hey Leute,

klar könnte ich bei Google suchen (mache ich auch), aber vielleicht hat einer von euch ja Erfahrung damit und kann mir helfen oder kennt ne gute Libary.

Ich möchte mit php html parsen. Konkret möchte ich in der Seite aus bestimmten tables die einzelnen Einträge rauslesen. Die tables befinden sich in eindeutig bennanten div's. Ich stell mir das daher so vor:

Gehe zu Div Container "xy" -> Hole Childobjekt(table) -> Gebe Zeilenweise die Werte der Tabelle aus.

Edith sagt, ich habe bereits eine Lösung gefunden. http://simplehtmldom.sourceforge.net/manual.htm Der Code sieht so aus. Damit gebe ich studide den Inhalt aus.


$html = new simple_html_dom();

$html->load_file('http://www.studentenwerkbielefeld.de/index.php?id=61');
getContent($html);



function getContent($html) {
foreach ($html->find('div[class=day-block]') as $div) {
foreach ($div->find('a') as $a) {
echo utf8_decode($a->innertext);
}
echo '<br/>';
foreach ($div->find('table') as $table) {
foreach ($table->find('tr') as $tr) {

foreach ($tr->find('th') as $th) {
echo utf8_decode($th->innertext);

echo '<br/>';
}
foreach ($tr->find('td') as $td) {
// echo utf8_decode($td->innertext);
foreach ($td->find('p') as $p) {
$text = utf8_decode($p->innertext);
if (strlen(stristr($text, "lachs"))) {
echo "<b>" . $text . "</b>";
} else {
echo $text;
}
}
echo '<br/>';
}
echo '<br/>';
}
echo '<br/>';
}
}
}