Hallo!Folgendes Problem: In einem gegebenen HTML-Quelltext moechte ich alle relativen durch absolute Hyperlinks (a href="..." und img src="...") ersetzen.
Dazu gehe ich bisher folgendermassen vor:
# start, nur das wichtigste
use HTML::LinkExtor;
my $oLX = HTML::LinkExtor->new(\&cb);
$oLX->parse($html_quelltext);my @links = ();
sub cb {
my($tag, %attr) = @_;
push(@links, values %attr);
}
for (@links) {
$neue_url = url$_, $baseURI)->abs;
$html_quelltext =~ s/$_/$neue_url/g;
}
# ende
Das funktioniert bisher auch wirklich gut. Einziges Problem: Links der Form
/ein/paar/pfade/datei.html?param1=val1¶m2=some/stuff+and/more
werden zwar vom LinkExtor korrekt als Links erkannt und befinden sich auch im Array "links"; sie werden aber durch den Substitutionsoperator NICHT ersetzt!
Was mache ich falsch?
Danke und Gruss.
Datum: 02.08.2005-17:08
