| WebService-Recruit-FromA documentation | Contained in the WebService-Recruit-FromA distribution. |
WebService::Recruit::FromA::JobSearch - FromA Navi Web Service "jobSearch" API
use WebService::Recruit::FromA;
my $service = WebService::Recruit::FromA->new();
my $param = {
'api_key' => $ENV{'WEBSERVICE_RECRUIT_FROMA_KEY'},
'ksjcd' => '04',
'shrt_indx_cd' => '1001',
};
my $res = $service->jobSearch( %$param );
my $data = $res->root;
print "Code: $data->Code\n";
print "TotalOfferAvailable: $data->TotalOfferAvailable\n";
print "TotalOfferReturned: $data->TotalOfferReturned\n";
print "PageNumber: $data->PageNumber\n";
print "EditionName: $data->EditionName\n";
print "...\n";
This module is a interface for the jobSearch API.
It accepts following query parameters to make an request.
my $param = {
'api_key' => 'XXXXXXXX',
'ksjcd' => '04',
'edition_cd' => '1',
'xml_block' => '1',
'm_area_cd' => 'i1',
's_area_cd' => '1i1001',
'nv_jb_type_cd' => '101',
'shrt_indx_cd' => '1001',
'wrk_dy_num_ctgry_cd' => '01',
'hours_ctgry_cd' => '01',
'regu_indx_s_class_cd' => '1101',
'emp_ed_m_area_cd' => 'i1',
'employ_frm_ctgry_cd' => '01',
'pull_sal_cd' => '01',
'no_exp_ok_f' => '1',
};
my $res = $service->jobSearch( %$param );
$service above is an instance of WebService::Recruit::FromA.
This returns the root element of the response.
my $root = $res->root;
You can retrieve each element by the following accessors.
$root->Code
$root->TotalOfferAvailable
$root->TotalOfferReturned
$root->PageNumber
$root->EditionName
$root->Offer
$root->Offer->[0]->Catch
$root->Offer->[0]->OfferId
$root->Offer->[0]->Url
$root->Offer->[0]->OfferStartDate
$root->Offer->[0]->OfferEndDate
$root->Offer->[0]->Zipcode
$root->Offer->[0]->Prefecture
$root->Offer->[0]->City
$root->Offer->[0]->VisualIndices
$root->Offer->[0]->TimeIndices
$root->Offer->[0]->MinimumWorkDays
$root->Offer->[0]->ShortIndex
$root->Offer->[0]->CorporateName
$root->Offer->[0]->TransPortation
$root->Offer->[0]->JobTypeDetail
$root->Offer->[0]->PayText
$root->Offer->[0]->OfferConditionList
$root->Offer->[0]->GeoPointList
$root->Offer->[0]->VisualIndices->VisualIndex
$root->Offer->[0]->TimeIndices->TimeIndex
$root->Offer->[0]->OfferConditionList->OfferCondition
$root->Offer->[0]->GeoPointList->GeoPoint
$root->Offer->[0]->VisualIndices->VisualIndex->[0]->VisualSize
$root->Offer->[0]->VisualIndices->VisualIndex->[0]->VisualName
$root->Offer->[0]->VisualIndices->VisualIndex->[0]->VisualImageUrl
$root->Offer->[0]->OfferConditionList->OfferCondition->[0]->TypeOfEmployment
This returns the raw response context itself.
print $res->xml, "\n";
This returns the response status code.
my $code = $res->code; # usually "200" when succeeded
This returns true value when the response has an error.
die 'error!' if $res->is_error;
RECRUIT Media Technology Labs <mtl@cpan.org>
Copyright 2008 RECRUIT Media Technology Labs
| WebService-Recruit-FromA documentation | Contained in the WebService-Recruit-FromA distribution. |
package WebService::Recruit::FromA::JobSearch; use strict; use base qw( WebService::Recruit::FromA::Base ); use vars qw( $VERSION ); use Class::Accessor::Fast; use Class::Accessor::Children::Fast; $VERSION = '0.0.1'; sub http_method { 'GET'; } sub url { 'http://xml.froma.yahoo.co.jp/s/r/jobSearch.jsp'; } sub query_class { 'WebService::Recruit::FromA::JobSearch::Query'; } sub query_fields { [ 'api_key', 'ksjcd', 'edition_cd', 'xml_block', 'm_area_cd', 's_area_cd', 'nv_jb_type_cd', 'shrt_indx_cd', 'wrk_dy_num_ctgry_cd', 'hours_ctgry_cd', 'regu_indx_s_class_cd', 'emp_ed_m_area_cd', 'employ_frm_ctgry_cd', 'pull_sal_cd', 'no_exp_ok_f' ]; } sub default_param { { }; } sub notnull_param { [ 'api_key', 'ksjcd' ]; } sub elem_class { 'WebService::Recruit::FromA::JobSearch::Element'; } sub root_elem_list { [ 'OfferList', 'Error', ]; } sub elem_fields { { 'Error' => ['Code', 'Message'], 'GeoPointList' => ['GeoPoint'], 'Offer' => ['Catch', 'OfferId', 'Url', 'OfferStartDate', 'OfferEndDate', 'Zipcode', 'Prefecture', 'City', 'VisualIndices', 'TimeIndices', 'MinimumWorkDays', 'ShortIndex', 'CorporateName', 'TransPortation', 'JobTypeDetail', 'PayText', 'OfferConditionList', 'GeoPointList'], 'OfferCondition' => ['TypeOfEmployment'], 'OfferConditionList' => ['OfferCondition'], 'OfferList' => ['Code', 'TotalOfferAvailable', 'TotalOfferReturned', 'PageNumber', 'EditionName', 'Offer'], 'TimeIndices' => ['TimeIndex'], 'VisualIndex' => ['VisualSize', 'VisualName', 'VisualImageUrl'], 'VisualIndices' => ['VisualIndex'], }; } sub force_array { [ 'GeoPoint', 'Offer', 'OfferCondition', 'TimeIndex', 'VisualIndex' ]; } # __PACKAGE__->mk_query_accessors(); @WebService::Recruit::FromA::JobSearch::Query::ISA = qw( Class::Accessor::Fast ); WebService::Recruit::FromA::JobSearch::Query->mk_accessors( @{query_fields()} ); # __PACKAGE__->mk_elem_accessors(); @WebService::Recruit::FromA::JobSearch::Element::ISA = qw( Class::Accessor::Children::Fast ); WebService::Recruit::FromA::JobSearch::Element->mk_ro_accessors( @{root_elem_list()} ); WebService::Recruit::FromA::JobSearch::Element->mk_child_ro_accessors( %{elem_fields()} );
1;