WWW::Search::TheITJobBoard - Search


        use WWW::Search::TheITJobBoard;
        use Data::Dumper;
        my $oSearch = WWW::Search->new('TheITJobBoard', _debug => undef);
                jobtype => WWW::Search::TheITJobBoard::CONTRACT,
        while (my $oResult = $oSearch->next_result){
                warn Dumper $oResultr;


WWW::Search, HTML::TokeParser.


Gets jobs from the UK IT job site, The IT Job Board.

A sub-class of WWW::Search that uses HTML::TokeParser to return WWW::SearchResult objects for each result found when querying

One frustrating aspect of The IT Jobboard is that, unlike JobServe (WWW::Search::Jobserve), it doesn't provide an option to list jobs with full descriptions. So this module offers the ability to create such a list: provide the constructor parameter detailed, with a value of html or text to get details as HTML or plain text. This will extend the WWW::SearchResult objects' description field, and also add a details key, which is itself a hash with interesting keys such as location and salary - those keys come directly from the HTML page, so YMMV.

At the time of writing, valid options for The IT Job Board search are as below. These should be passed to native_query, as shown in the example.


THe keywords your target job description should contain. Default is perl, of course.


Valid values are: 1 for contract (our default), 2 for permenant, and 0 for either You may use constants: WWW::Search::TheITJobBoard::CONTRACT, WWW::Search::TheITJobBoard::PERM, WWW::Search::TheITJobBoard::ANY.


The age of the posting, in days, according to the site's records. A value of 0 represents any age. Our default is 1.


Not especially relevant for us: valid values are 1 to order by relevance to the keywords; 2 to order by date posted; 3 orders by salary; 4 puts non-agency jobs first, which is the default. You may use constants: WWW::Search::TheITJobBoard::RELEVANCE, WWW::Search::TheITJobBoard::DATE, WWW::Search::TheITJobBoard::SALARY, WWW::Search::TheITJobBoard::NONAGENCY


This ugly-named entity limits the search by location. The default is to return all jobs, regardless. Valid values are: undef to return all jobs; 180 for UK, 124 for Netherlands, 93 for Germany, 69 for France, 308 for Switzerland, 170 for Republic Of Ireland, 3 for Austria, 301 for 'the rest Of the world,' 254 for 'other European.'

You may supply location instead of location[], but you will still have to access the value you set via the latter.


The number of the page to start at, indexed from 1.


Defaults to en for English, but you could try other two-letter ISO codes.

METHOD native_retrieve_some

Retrieve some results. Returns the number of results found. Will make as many HTTP requests as necessary to get to the maximum results you specify.


Posibly. Please use to report them.


This module was composed after reading WWW::Search, WWW::Search::Yahoo, WWW::Search::Yahoo::Advanced and WWW::Search::Jobserve. If this module is useful to you, check out the latter too.


Copyright (C) Lee Goddard, 2006. Some Rights Reserved.


This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.0 England and Wales License:

<!--Creative Commons License--><a rel="license" href=""><img alt="Creative Commons License" border="0" src=""/></a> <br/>This work is licensed under a <a rel="license" href="">Creative Commons Attribution-NonCommercial-ShareAlike 2.0 England &amp; Wales License</a>. <!--/Creative Commons License-->

<!-- <rdf:RDF xmlns="" xmlns:dc="" xmlns:rdf=""> <Work rdf:about=""> <license rdf:resource="" /> <dc:title>WWW::Search::TheITJobBoard</dc:title> <dc:date>2006</dc:date> <dc:creator><Agent><dc:title>Lee Goddard</dc:title></Agent></dc:creator> <dc:rights><Agent><dc:title>Lee Goddard</dc:title></Agent></dc:rights> <dc:type rdf:resource="" /> </Work> <License rdf:about=""><permits rdf:resource=""/><permits rdf:resource=""/> <requires rdf:resource=""/> <requires rdf:resource=""/> <prohibits rdf:resource=""/> <permits rdf:resource=""/> <requires rdf:resource=""/></License> </rdf:RDF> -->

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 392:

=end html without matching =begin. (Stack: [empty])

Around line 414:

=end xml without matching =begin. (Stack: [empty])