gpt4 book ai didi

perl - 如何使用 Geo::Coder::US 和 Geo::TigerLine 将美国街道地址转换为地理空间坐标?

转载 作者:行者123 更新时间:2023-12-05 01:26:39 25 4
gpt4 key购买 nike

我在 Geo::Coder::US 工作和 Geo::Coder::US::Import .他们说我需要导入数据库,他们的示例没有显示如何执行此操作,至少对于现在可行的方式。 Geo::Coder::US 想要查看 Berkeley DB。 Geo::Coder::US::Import 有示例代码来创建不起作用的数据库。编码:

Geo::Coder::US::Import->load_tiger_data( "TGR06075" );

崩溃,说:

can't read TGR06075.RTC: No such file or directory at ./import.pl line 7



字符串过时了吗?有人可以提供将填充数据库的示例代码,以便 Geo::Coder::US 拥有它想要的一切吗?

最佳答案

我找到了thisGeo::Coder::US::Import 的 CPAN 文档中.您也许可以将文档中给出的示例与这些文件的新版本一起使用。看来您无论如何都应该自己获取文件。它们似乎没有随模块一起提供。

因此,它找不到数据库文件是有道理的。

我偷偷看了一下Import.pm :

sub load_tiger_data {
my ($class, $source) = @_;

my $DB = \%Geo::Coder::US::DB;
croak "No database specified" unless tied( %$DB );

open TIGER, "<$source.RTC" or croak "can't read $source.RTC: $!";
Geo::TigerLine::Record::C->parse_file( \*TIGER, \&_type_C );

open TIGER, "<$source.RT1" or croak "can't read $source.RT1: $!";
Geo::TigerLine::Record::1->parse_file( \*TIGER, \&_type_1 );

看起来它附加了 .RTC到参数,使其成为文件名。因此,我建议尝试在人口普查网站上查找当前数据,将其放在工作目录附近的某个位置,然后使用数据的文件名再次尝试。

关于perl - 如何使用 Geo::Coder::US 和 Geo::TigerLine 将美国街道地址转换为地理空间坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11087087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com