使用Perl从纬度和经度查找时区

时间:2014-05-29 21:25:10

标签: perl timezone coordinates

我正在寻找一种方法来使用Perl来获得与给定纬度和经度相对应的时区。任何在Linux上运行的程序都可以。

我有时间的UTC和GPS坐标图片,我想在具有当地时间和日期的网站上使用它们。

我在CPAN上找到了Geo::Location::TimeZone模块,看起来它可以完成这项工作,但它不起作用,我仍在努力找出原因。

1 个答案:

答案 0 :(得分:1)

根据您需要执行的查找量和使用条款,Google Time Zone服务看起来很容易使用。

use strict;
use warnings;

use LWP::Simple;
use JSON::Any;

my ($lat, $long) = (39.6034810,-119.6822510);
my $apikey = 'whatever';
my $time = time();

my $location = JSON::Any->jsonToObj(get("https://maps.googleapis.com/maps/api/timezone/json?location=$lat,$long&timestamp=$time&sensor=false&key=$apikey"));
say $location->{timeZoneId};    # America/Los_Angeles
say $location->{timeZoneName};  # Pacific Standard Time