I hate navigating the Dell website. It's inconsistent and messy and noisy, and all I generally want is a single date (when the warranty expires or expired on a given box). So I wrote this. It scrapes the Dell website, and returns the warranty info for the service tag it's been passed.
I've CGI'd it here.
#! /usr/bin/perl use strict; use warnings; my $service_tag = $ARGV[0]; use LWP::Simple; use HTML::TableExtract; # Is in the CPAN, and exists in the debian repositories as libhtml-tableextract-perl ## Make a URL: my $url_base = "http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/en/details"; my $url_params = "?c=uk&cs=ukbsdt1&l=en&s=gen"; my $url = $url_base.$url_params."&servicetag=".$service_tag; my $content = get($url); # Tell HTML::TableExtract to pick out the table(s) whose class is 'contract_table': my $table = HTML::TableExtract->new( attribs => { class => "contract_table" } ); $table->parse($content); ## Gimme infos! foreach my $ts ($table->tables) { foreach my $row ($ts->rows) { } }