#!/usr/local/bin/perl -w use strict; use Sysadm::Install qw(:all); use LWP::Simple ; use HTML::TreeBuilder::XPath; use Log::Log4perl qw(:easy); my $nick = "my-ebay-name"; my $ebay_url = "http://feedback.ebay.com" . "/ws/eBayISAPI.dll?ViewFeedback2" . "&userid=$nick"; my( $home ) = glob "~"; my $data_dir = "$home/logs"; my $cache = "$data_dir/ebay-feedback.cache"; my $log_file = "$data_dir/ebay-feedback.log"; # mail prefs my $mailer = "/usr/bin/mail"; my $mail_to = 'my@email.com'; mkd $data_dir if !-d $data_dir; Log::Log4perl->easy_init( { level => $DEBUG, file => ">>$log_file" } ); my $last_feedback; if( -f $cache ) { $last_feedback = slurp $cache; } my $feedback = feedback_fetch(); if( !defined $last_feedback or $last_feedback != $feedback ) { $last_feedback ||= 0; INFO "New feedback: $feedback"; INFO "Sending mail to $mail_to"; open PIPE, "| $mailer -s 'New Ebay Feedback: " . "$feedback' $mail_to"; print PIPE <new; $tree->parse( $content ); my( $text ) = $tree->findvalue( '/html/body//span[@class="mbg-l"]'); if( $text =~ /\s*(\d+)/ ) { return $1; } ERROR "Pattern in page not found"; return undef; }