GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  WEBSERVICE::CIA::SOURCE::WEB (3)

.ds Aq ’

NAME

WebService::CIA::Source::Web - An interface to the online CIA World Factbook

CONTENTS

SYNOPSIS



  use WebService::CIA::Source::Web;
  my $source = WebService::CIA::Source::DBM->new();



DESCRIPTION

WebService::CIA::Source::Web is an interface to the live, online version of the CIA World Factbook.

It’s a very slow way of doing things, but requires no pre-compiled DBM. It’s more likely to be useful for proving concepts or testing.

METHODS

Apart from new, these methods are normally accessed via a WebService::CIA object.
new( \%opts )


    my $source = WebService::CIA::Source::Web->new();
    $source = WebService::CIA::Source::Web->new( { user_agent => $ua } );



This method creates a new WebService::CIA::Source::Web object. It takes an optional hashref of arguments.
user_agent A user agent object to use. This must implement the same user interface as LWP::UserAgent (or, at least, a get() method).

value($country_code, $field) Retrieve a value from the web.

$country_code should be the FIPS 10-4 country code as defined in <https://www.cia.gov/library/publications/the-world-factbook/appendix/appendix-d.html>.

$field should be the name of the field whose value you want to retrieve, as defined in <https://www.cia.gov/library/publications/the-world-factbook/docs/notesanddefs.html>. (WebService::CIA::Parser also creates four extra fields: URL, URL - Print, URL - Flag, and URL - Map which are the URLs of the country’s Factbook page, the printable version of that page, a GIF map of the country, and a GIF flag of the country respectively.)

value will return undef if the country or field cannot be found, or if there is an error GETing the page. This isn’t ideal, but I can’t think of the best way around it right now.

all($country_code) Returns a hashref of field-value pairs for $country_code or an empty hashref if $country_code isn’t available from the Factbook.
get($country_code) Retrieve and cache the data for a country.

Returns 1 if successful, 0 if not.

cached($country_code) Get/set the country code whose data is cached.
cache($hashref) Get/set a hashref of data for the current country.
parser() Returns a reference to the WebService::CIA::Parser object being used.
ua( $userAgent ) Returns a reference to the user agent object being used. By default this is an LWP::UserAgent object, but you can pass a different object in if you wish.
last_response() Returns the HTTP::Response object from the last request.

CACHING

In order to make some small improvement in efficiency, WebService::CIA::Source::Web keeps a copy of the data for the last country downloaded in memory.

TO DO

File system based caching of pages.
User-definable stack of cached countries, rather than just one.
Caching of last-modified headers; conditional GET.

AUTHOR

Ian Malpass (ian-cpan@indecorous.com)

COPYRIGHT

Copyright 2003-2007, Ian Malpass

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The CIA World Factbook’s copyright information page (<https://www.cia.gov/library/publications/the-world-factbook/docs/contributor_copyright.html>) states:



  The Factbook is in the public domain. Accordingly, it may be copied
  freely without permission of the Central Intelligence Agency (CIA).



SEE ALSO

WebService::CIA, WebService::CIA::Parser, WebService::CIA::Source::DBM
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 WEBSERVICE::CIA::SOURCE::WEB (3) 2016-04-04

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.