The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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

{'method' => 'and'}

Logical AND of all the query terms.

{'method' => 'or'}

Logical OR of all the query terms.

{'method' => '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

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

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

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

{'acode' => $area_code}

Multiple area codes (up to 5) are supported.

Restrict by Job Term

No restrictions by default.

{'term' => 'CON'} - contract jobs
{'term' => 'C/H'} - contract to hire
{'term' => 'FTE'} - 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

Restrict by Job Type

No restriction by default. To select jobs with specific job type use the following option:

{'jtype' => $jobtype}

Here $jobtype (according to http://www.dice.com) can be one or more of the following:

  • ANL - Business Analyst/Modeler

  • COM - Communications Specialist

  • DBA - Data Base Administrator

  • ENG - Other types of Engineers

  • FIN - Finance / Accounting

  • GRA - Graphics/CAD/CAM

  • HWE - Hardware Engineer

  • INS - Instructor/Trainer

  • LAN - LAN/Network Administrator

  • MGR - Manager/Project leader

  • OPR - Data Processing Operator

  • PA - Application Programmer/Analyst

  • QA - Quality Assurance/Tester

  • REC - Recruiter

  • SLS - Sales/Marketing

  • SWE - Software Engineer

  • SYA - Systems Administrator

  • SYS - Systems Programmer/Support

  • TEC - Custom/Tech Support

  • TWR - Technical Writer

  • WEB - Web Developer / Webmaster

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).

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.