WebService::CIA(3pm) | User Contributed Perl Documentation | WebService::CIA(3pm) |
WebService::CIA - Get information from the CIA World Factbook.
use WebService::CIA; use WebService::CIA::Source::DBM; use WebService::CIA::Source::Web; # Get data from a pre-compiled DBM file my $source = WebService::CIA::Source::DBM->new({ DBM => "factbook.dbm" }); my $cia = WebService::CIA->new({ Source => $source }); $fact = $cia->get("uk", "Population"); print $fact; # Get data direct from the CIA World Factbook my $source = WebService::CIA::Source::Web->new(); my $cia = WebService::CIA->new({ Source => $source }); $fact = $cia->get("uk", "Population"); print $fact;
A module which gets information from the CIA World Factbook.
The most recent version of the CIA World Factbook uses HTTPS to access its web pages. As such, WebService::CIA requires Crypt::SSLeay which suffers from the usual cryptographic export restriction mumbo jumbo. Sorry about that.
Users of ActiveState's ActivePerl should see <http://aspn.activestate.com/ASPN/Downloads/ActivePerl/PPM/Repository> for instructions on downloading a PPM of Crypt::SSLeay.
It takes two arguments: a country code (as defined in FIPS 10-4 on <https://www.cia.gov/library/publications/the-world-factbook/appendix/appendix-d.html>, e.g. "uk", "us") and a field name (as defined in <https://www.cia.gov/library/publications/the-world-factbook/docs/notesanddefs.html>, e.g. "Population", "Agriculture - products"). (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.)
The field name is very case and punctuation sensitive.
It returns the value of the field, or "undef" if the field or country isn't in the store.
Note that when using WebService::CIA::Store::Web, "get" will also return "undef" if there is an error getting the page.
It returns a hashref of the form
{ 'country1' => { 'field1' => 'value', 'field2' => 'value' }, 'country2' => { 'field1' => 'value', 'field2' => 'value' } }
It takes one argument, an arrayref of country codes.
It returns a hashref similar to the one from "get_hashref" above, containing all the fields available for each country.
Ian Malpass (ian-cpan@indecorous.com)
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).
WebService::CIA::Parser, WebService::CIA::Source::DBM, WebService::CIA::Source::Web
2021-01-09 | perl v5.32.0 |