Schrift
[thread]8956[/thread]

Daten aus HTML filtern

Leser: 1


<< >> 7 Einträge, 1 Seite
Gast Gast
 2007-04-30 19:33
#76336 #76336
Hallo erstmal

Ich habe leider nicht wirklch erfahrung in Perl bin aber nun gerade darauf angewiesen von daher wäre es sehr nett wenn mir Jemand bei meinem Problem etwas helfen kann

es geht im grunde darum gewisse daten aus einer html-datei zu filtern. Diese ist recht gut strukturiert was die sache vermutlich etwas leichter macht.

neben vielen für meinen zweck belanglosen daten menu etc. verfügt diese über eine bestimmte tabelle diese hat auch eine bestimmte id im table-tag die daten diese tabelle müsste ich nun auslesen.

ich habe das skript momentan so, dass die gesammt seite in eine variable gelesen wird. meine frage ist nun ob es möglich ist diese tabelle aus der variable zu filtern und in z.b. eine andere zu schreiben und wenn dann wie?

vielen dank schonmal für die antworten
Ronnie
 2007-04-30 20:08
#76337 #76337
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=Guest,30.04.2007, 17:33]meine frage ist nun ob es möglich ist diese tabelle aus der variable zu filtern und in z.b. eine andere zu schreiben und wenn dann wie?[/quote]
CPAN:HTML::TableExtract
Wenn du eine ausführlichere Antwort wünschst wäre es sinnvoll deinen Lösungs-Ansatz (Skript) und eine Beispieldatei zu posten!\n\n

<!--EDIT|Ronnie|1177949407-->
tsabo
 2007-05-01 17:25
#76338 #76338
User since
2007-05-01
3 Artikel
BenutzerIn
[default_avatar]
ok mit table extract kann ich den text auslesen wie sieht es denn aus wenn da nun links bei sind? die werden nun ja erstmal nur als text angezeigt ist es möglich den A-Tag mit anzuzeigen? oder muss ich mir da wieder was anderes suchen?

achja ok ehm mein lösungsansatz ist etwas unstruckturiert und halt nur zum testen aber hier

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/perl -w

use LWP::UserAgent;
use HTML::TableExtract;

$ua = LWP::UserAgent->new();

$url = '##################################';

$request = HTTP::Request->new('GET', $url);

$response = $ua->request($request);

if ( $response->is_error() ) {
print "Error-Code : ", $response->code() , "\n";
print "Fehlermeldung: ", $response->message() , "\n";
}
else {
$content = $response->content() , "\n";
}

#open (TEST, '>test.txt');
#print TEST $content;
#close (TEST)

$te = HTML::TableExtract->new( attribs => { id => 'einebestimmteID' } );
$te->parse($content);

open (TEST, '>test.txt');
foreach $ts ($te->tables) {
print "Table (", join(',', $ts->coords), "):\n";
foreach $row ($ts->rows) {
print TEST join(',', @$row), "\n";
}
}
close (TEST);
\n\n

<!--EDIT|tsabo|1178029243-->
nepos
 2007-05-01 17:42
#76339 #76339
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm, bist du dir sicher, dass Allakhazam das automatische Auslesen seiner Seiten erlaubt?
tsabo
 2007-05-01 18:18
#76340 #76340
User since
2007-05-01
3 Artikel
BenutzerIn
[default_avatar]
nein das nicht.

-> ich werd gleich mal den code zensieren...

es geht ja darum das ich n bissl was lerne hier ;)... und für privat is das ja alles nicht so kritisch ne!....

um aufs thema zurück zu kommen: ist es möglich das html:tableextract nicht die tags rauskürzt? wenn nicht gibt es etwas ähnliches womit das möglich wäre?...
PerlProfi
 2007-05-01 18:41
#76341 #76341
User since
2006-11-29
340 Artikel
BenutzerIn
[default_avatar]
Aus der Doku habe ich entnommen, dass man mit dem Parameter keep_html das herausnehmen, oder ersetzen von HTML Tags abschalten kann.
tsabo
 2007-05-01 18:53
#76342 #76342
User since
2007-05-01
3 Artikel
BenutzerIn
[default_avatar]
ui danke


notiz an mich: RTFM ;)
<< >> 7 Einträge, 1 Seite



View all threads created 2007-04-30 19:33.