| Server IP : 81.2.241.106 / Your IP : 216.73.216.165 Web Server : Apache/2.4.67 (Debian) System : Linux tranq-f.bakta.org 5.10.0-45-amd64 #1 SMP Debian 5.10.259-1 (2026-07-02) x86_64 User : lisky ( 1002) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/doc/libhtml-tree-perl/examples/ |
Upload File : |
#!/usr/bin/perl
use warnings;
use strict;
use 5.008;
use Pod::Usage;
=head1 NAME
htmltree - Parse the given HTML file(s) and dump the parse tree
=head1 SYNOPSIS
htmltree -D3 -w file1 file2 file3
Options:
-D[number] sets HTML::TreeBuilder::Debug to that figure.
-w turns on $tree->warn(1) for the new tree
-h Help message
=cut
my $warn;
my $help;
BEGIN { # We have to set debug level before we use HTML::TreeBuilder.
$HTML::TreeBuilder::DEBUG = 0; # default debug level
$warn = 0;
while(@ARGV) { # lameo switch parsing
if($ARGV[0] =~ m<^-D(\d+)$>s) {
$HTML::TreeBuilder::DEBUG = $1;
print "Debug level $HTML::TreeBuilder::DEBUG\n";
shift @ARGV;
} elsif ($ARGV[0] =~ m<^-w$>s) {
$warn = 1;
shift @ARGV;
} elsif ($ARGV[0] =~ m<^-h$>s) {
$help = 1;
shift @ARGV;
} else {
last;
}
}
}
pod2usage({-exitval => 0, -verbose => 1}) if($help);
use HTML::TreeBuilder;
foreach my $file (grep( -f $_, @ARGV)) {
print
"=" x 78, "\n",
"Parsing $file...\n";
my $h = HTML::TreeBuilder->new;
$h->ignore_unknown(0);
$h->warn($warn);
$h->parse_file($file);
print "- "x 39, "\n";
$h->dump();
$h = $h->delete(); # nuke it!
print "\n\n";
}
exit;