У меня есть этот файл, который я получаю от wget.
casperadm@casper:~> cat /tmp/one
<html>
<head>
<style>
a{text-decoration:none}
a:link{color:024C7E}
a:visited{color:024C7E}
a:active{color:958600}
body{font:10pt verdana;text-align:justify}
</style>
</head>
<body>
<pre>
x
-----
casper foo text
</body>
</html>
и затем я создал очень простой анализ HTML в Perl
#!/usr/bin/perl -w
use warnings ;
use strict;
package HTMLStrip;
use base "HTML::Parser";
subtext {
my ($self, $text) = @_;
print $text;
}
my $p = new HTMLStrip;
# parse line-by-line, rather than the whole file at once
while (<>) {
$p->parse($_);
}
# flush and parse remaining unparsed HTML
$p->eof;
Синтаксический анализ работает нормально, однако, кажется, он игнорирует встроенные стили, которые были неожиданной ошибкой, и портит мои коллекции старых веб-страниц, с которых мне приходится получать данные.
Любые идеи о том, как избавиться от гладких встроенных стилей CSS?
casperadm@casper:~> /tmp/pleaseParse /tmp/one
a{text-decoration:none}a:link{color:024C7E}a:visited{color:024C7E}a:active{color:958600}body{font:10pt verdana;text-align:justify}
x
-----
casper foo text