NAME

WWW::Search::Dice - class for searching Dice

SYNOPSIS

 use WWW::Search;
 my $oSearch = new WWW::Search('Dice');
 my $sQuery = WWW::Search::escape_query("unix and (c++ or java)");
 $oSearch->native_query($sQuery,
 			{'method' => 'bool',
		         'state' => 'CA',
		         'daysback' => 14});
 while (my $res = $oSearch->next_result()) {
     if(isHitGood($res->url)) {
 	 my ($company,$title,$date,$location) = 
	     $oSearch->getMoreInfo($res->url);
 	 print "$company $title $date $location " . $res->url . "\n";
     } 
 }

 sub isHitGood {return 1;}

DESCRIPTION

This class is a Dice specialization of WWW::Search. It handles making and interpreting Dice searches at http://www.dice.com.

By default, returned WWW::SearchResult objects contain only url, title and description which is a mixture of location and skills wanted. Function getMoreInfo( $url ) provides more specific info - it has to be used as

my ($company,$title,$date,$location) = 
    $oSearch->getMoreInfo($res->url);

OPTIONS

The following search options can be activated by sending a hash as the second argument to native_query().

Format / Treatment of Query Terms

The default is to treat entire query as a boolean expression with AND, OR, NOT and parentheses

{'SEARCH_INCLUDE' => 'and'}

Logical AND of all the query terms.

{'SEARCH_INCLUDE' => 'or'}

Logical OR of all the query terms.

{'SEARCH_INCLUDE' => 'bool'}

treat entire query as a boolean expression with AND, OR, NOT and parentheses. This is the default option.

Restrict by Date

The default is to return jobs posted in last 30 days

{'DAYSBACK' => $number}

Display jobs posted in last $number days

Restrict by Location

The default is "ALL" which means all US states

{'STAT_PROV' => $state} - Only jobs in state $state.
{'STAT_PROV' => 'CDA'} - Only jobs in Canada.
{'STAT_PROV' => 'INT'} - To select international jobs.
{'STAT_PROV' => 'TRV'} - Require travel.
{'STAT_PROV' => 'TEL'} - Display telecommute jobs.

Multiple selections are possible. To do so, add a "+" sign between desired states, e.g. {'STAT_PROV' => 'NY+NJ+CT'}

You can also restrict by 3-digit area codes. The following option does that:

{'AREA_CODES' => $area_code}

Multiple area codes (up to 5) are supported.

Restrict by Job Term

No restrictions by default.

{'TAXTERM' => 'CON_W2' - Contract - W2
{'TAXTERM' => 'CON_IND' - Contract - Independent
{'TAXTERM' => 'CON_CORP' - Contract - Corp-to-Corp
{'TAXTERM' => 'CON_HIRE_W2' - Contract to Hire - W2
{'TAXTERM' => 'CON_HIRE_IND' - Contract to Hire - Independent
{'TAXTERM' => 'CON_HIRE_CORP' - Contract to Hire - Corp-to-Corp
{'TAXTERM' => 'FULLTIME'} - full time

Use a '+' sign for multiple selection.

There is also a switch to select either W2 or Independent:

{'addterm' => 'W2ONLY'} - W2 only
{'addterm' => 'INDOK'} - Independent ok

Limit total number of hits

The default is to stop searching after 500 hits.

{'num_to_retrieve' => $num_to_retrieve}

Changes the default to $num_to_retrieve.

AUTHOR

WWW::Search::Dice is written and maintained by Alexander Tkatchev (Alexander.Tkatchev@cern.ch).

Version 2.00: Scraper subclassing, updating to Dice's 27.Apr.01 CGI format, and other minor changes done by Glenn Wood, glenwood@alumni.caltech.edu

Version 2.02: written by Brian Sammon

LEGALESE

THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.