@URLs = ("http://search.excite.com/search.gw?search=%s&lang=en", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=0&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=10&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=20&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=30&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=40&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=50&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=60&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=70&lang=en&perPage=10&next=Next+Results", "http://search.excite.com/search.gw?c=web&s=%s&showSummary=true&start=80&lang=en&perPage=10&next=Next+Results"); sub getpage { my($page, $search) = @_; $page--; return $SearchStat::E_RANGE if($page<0 || $page>$#URLs); $url = sprintf($URLs[$page], $search); $page = &fetch($url); return $SearchStat::E_NOTFOUND if $page == $SearchStat::E_NOTFOUND; @urls = (); return E_RANGE if $page =~ m!Sorry, no matches were found containing .*!is; while($page =~ m!\n!is) { my $url = $1; $url =~ s!http://search.excite.com/.*(http://.*)$!$1!gis; $page =~ s!\n!!is; @urls=(@urls, $url); } return \@urls; } $valid = 1; 1;