Geo::Coder::GooglePlaces::V3 - Google Places Geocoding API V3
Version 0.04
use Geo::Coder::GooglePlaces; my $geocoder = Geo::Coder::GooglePlaces->new(); my $location = $geocoder->geocode(location => 'Hollywood and Highland, Los Angeles, CA');
Geo::Coder::GooglePlaces::V3 provides a geocoding functionality using Google Places API V3.
$geocoder = Geo::Coder::GooglePlaces->new(); $geocoder = Geo::Coder::GooglePlaces->new(language => 'ru'); $geocoder = Geo::Coder::GooglePlaces->new(gl => 'ca'); $geocoder = Geo::Coder::GooglePlaces->new(oe => 'latin1');
To specify the language of Google's response add language parameter with a two-letter value. Note that adding that parameter does not guarantee that every request returns translated data.
language
You can also set gl parameter to set country code (e.g. ca for Canada).
gl
You can ask for a character encoding other than utf-8 by setting the oe parameter, but this is not recommended.
You can optionally use your Places Premier Client ID, by passing your client code as the client parameter and your private key as the key parameter. The URL signing for Premier Client IDs requires the Digest::HMAC_SHA1 and MIME::Base64 modules. To test your client, set the environment variables GMAP_CLIENT and GMAP_KEY before running v3_live.t
client
key
GMAP_CLIENT=your_id GMAP_KEY='your_key' make test
You can get a key from https://console.developers.google.com/apis/credentials.
$location = $geocoder->geocode(location => $location); @location = $geocoder->geocode(location => $location);
Queries $location to Google Places geocoding API and returns hash reference returned back from API server. When you cann the method in an array context, it returns all the candidates got back, while it returns the 1st one in a scalar context.
When you'd like to pass non-ASCII string as a location, you should pass it as either UTF-8 bytes or Unicode flagged string.
$location = $geocoder->reverse_geocode(latlng => '37.778907,-122.39732'); @location = $geocoder->reverse_geocode(latlng => '37.778907,-122.39732');
Similar to geocode except it expects a latitude/longitude parameter.
Accessor method to get and set UserAgent object used internally. You can call env_proxy for example, to get the proxy information from environment variables:
$coder->ua->env_proxy(1);
You can also set your own User-Agent object:
$coder->ua( LWP::UserAgent::Throttled->new() );
Accessor method to get and set your Google API key.
print $coder->key(), "\n";
Nigel Horne <njh@bandsman.co.uk>
<njh@bandsman.co.uk>
Based on Geo::Coder::Google by Tatsuhiko Miyagawa <miyagawa@bulknews.net>
<miyagawa@bulknews.net>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Geo::Coder::Yahoo
You can find documentation for this module with the perldoc command.
perldoc Geo::Coder::GooglePlaces
You can also look for information at:
MetaCPAN
https://metacpan.org/release/Geo-Coder-GooglePlaces
RT: CPAN's request tracker
https://rt.cpan.org/NoAuth/Bugs.html?Dist=Geo-Coder-GooglePlaces
CPANTS
http://cpants.cpanauthors.org/dist/Geo-Coder-GooglePlaces
CPAN Testers' Matrix
http://matrix.cpantesters.org/?dist=Geo-Coder-GooglePlaces
CPAN Ratings
http://cpanratings.perl.org/d/Geo-Coder-GooglePlaces
CPAN Testers Dependencies
http://deps.cpantesters.org/?module=Geo::Coder::GooglePlaces
To install Geo::Coder::GooglePlaces, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Geo::Coder::GooglePlaces
CPAN shell
perl -MCPAN -e shell install Geo::Coder::GooglePlaces
For more information on module installation, please visit the detailed CPAN module installation guide.