#! /usr/bin/perl -w
use strict;
use LWP::UserAgent;
my @cartridge = qw/ name part percent remain coverage low serial printed /;
my @kit = qw/ name part percent remain /;
for my $host( @ARGV ) {
my $url = qq{http://$host/hp/device/this.LCDispatcher?dispatch=html&cat=0&pos=2};
my $response = LWP::UserAgent->new->request( HTTP::Request->new( GET => $url ));
if( !$response->is_success ) {
warn "$host: couldn't get $url: ", $response->status_line, "\n";
next;
}
$_ = $response->content;
my (@s) = grep { defined $_ } m{
(?:
> # closing tag
([^<]+) # text (name of part, e.g. q/BLACK CARTRIDGE/)
([^<]+) # part number (e.g. q/HP Part Number: HP C9724A/)
\s+\s*
]*>]*>\s* # separated by this | Based\son\shistorical\s\S+\spage\scoverage\sof\s # or just this, within a