Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Geo::Coder::Googlev3(3User Contributed Perl DocumentatiGeo::Coder::Googlev3(3)

NAME
       Geo::Coder::Googlev3 - Google Maps v3 Geocoding API

SYNOPSIS
	   use Geo::Coder::Googlev3;

	   my $geocoder	= Geo::Coder::Googlev3->new;
	   my $location	 = $geocoder->geocode(location => 'Brandenburger Tor, Berlin');
	   my @locations = $geocoder->geocode(location => 'Berliner StraAe, Berlin, Germany');

DESCRIPTION
       Use this	module just like Geo::Coder::Google. Note that no "apikey" is
       used in Google's	v3 API,	and the	returned data structure	differs.

       Please check also
       <https://developers.google.com/maps/documentation/geocoding/> for more
       information about Google's Geocoding API	and especially usage limits.

   CONSTRUCTOR
       new
	       $geocoder = Geo::Coder::Googlev3->new;
	       $geocoder = Geo::Coder::Googlev3->new(language => 'de', gl => 'es');

	   Creates a new geocoding object.

	   The "ua" parameter may be supplied to override the default
	   LWP::UserAgent object. The default "LWP::UserAgent" object sets the
	   "timeout" to	15 seconds and enables the "env_proxy" option.

	   The Geo::Coder::Google's "oe" parameter is not supported.

	   The parameters "region", "language",	"bounds", and "key" are	also
	   accepted. The "bounds" parameter should be in the form:

	      [{lat => ..., lng	=> ...}, {lat => ..., lng => ...}]

	   The parameter "sensor" should be set	to the string "true" if	the
	   geocoding request comes from	a device with a	location sensor	(see
	   <https://developers.google.com/maps/documentation/geocoding/#GeocodingRequests>).
	   There's no default.

	   By default queries are done using "http". By	setting	the
	   "use_https" parameter to a true value "https" is used.

   METHODS
       geocode
	       $location = $geocoder->geocode(location => $location);
	       @locations = $geocoder->geocode(location	=> $location);

	   Queries $location to	Google Maps geocoding API. In scalar context
	   it returns a	hash reference of the first (best matching?) location.
	   In list context it returns a	list of	such hash references.

	   The returned	data structure looks like this:

	     {
	       "formatted_address" => "Brandenburger Tor, Pariser Platz	7, 10117 Berlin, Germany",
	       "types" => [
		 "point_of_interest",
		 "establishment"
	       ],
	       "address_components" => [
		 {
		   "types" => [
		     "point_of_interest",
		     "establishment"
		   ],
		   "short_name"	=> "Brandenburger Tor",
		   "long_name" => "Brandenburger Tor"
		 },
		 {
		   "types" => [
		     "street_number"
		   ],
		   "short_name"	=> 7,
		   "long_name" => 7
		 },
		 {
		   "types" => [
		     "route"
		   ],
		   "short_name"	=> "Pariser Platz",
		   "long_name" => "Pariser Platz"
		 },
		 {
		   "types" => [
		     "sublocality",
		     "political"
		   ],
		   "short_name"	=> "Mitte",
		   "long_name" => "Mitte"
		 },
		 {
		   "types" => [
		     "locality",
		     "political"
		   ],
		   "short_name"	=> "Berlin",
		   "long_name" => "Berlin"
		 },
		 {
		   "types" => [
		     "administrative_area_level_2",
		     "political"
		   ],
		   "short_name"	=> "Berlin",
		   "long_name" => "Berlin"
		 },
		 {
		   "types" => [
		     "administrative_area_level_1",
		     "political"
		   ],
		   "short_name"	=> "Berlin",
		   "long_name" => "Berlin"
		 },
		 {
		   "types" => [
		     "country",
		     "political"
		   ],
		   "short_name"	=> "DE",
		   "long_name" => "Germany"
		 },
		 {
		   "types" => [
		     "postal_code"
		   ],
		   "short_name"	=> 10117,
		   "long_name" => 10117
		 }
	       ],
	       "geometry" => {
		 "viewport" => {
		   "southwest" => {
		     "lat" => "52.5094785",
		     "lng" => "13.3617711"
		   },
		   "northeast" => {
		     "lat" => "52.5230586",
		     "lng" => "13.3937859"
		   }
		 },
		 "location" => {
		   "lat" => "52.5162691",
		   "lng" => "13.3777785"
		 },
		 "location_type" => "APPROXIMATE"
	       }
	     };

	   The raw option may be set to	a true value to	get the	uninterpreted,
	   raw result from the API. Just the JSON data will be translated into
	   a perl hash.

	       $raw_result = $geocoder->geocode(location => $location, raw => 1);

       region
	   Accessor for	the "region" parameter.	The value should be a country
	   code	("es", "dk", "us", etc). Use this to tell the webservice to
	   prefer matches from that region. See	the Google documentation for
	   more	information.

       language
	   Accessor for	the "language" parameter.

       bounds
	   Accessor for	the "bounds" parameter.

       sensor
	   Accessor for	the "sensor" parameter.

AUTHOR
       Slaven Rezic <srezic@cpan.org>

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

SEE ALSO
       Geo::Coder::Google, Geo::Coder::Many.

perl v5.32.0			  2018-03-10	       Geo::Coder::Googlev3(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Geo::Coder::Googlev3&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help