dictionary - JTileDownloader 被 Mapnik 禁止

标签 dictionary openstreetmap mapnik

我需要下载一些磁贴才能在使用 JTileDownloader 的网页中离线使用它们, 版本 0-6-1。

当我使用 Mapnik 作为源时,它收到一条“禁止”消息。可能发生了什么?

我听说如果您不声明用户代理就会发生这种情况,但程序似乎不提供此选项。

无论如何,有人知道通过 Mapnik 下载图 block 的选项吗?

最佳答案

这个 tile grabber 被 OSM 管理员禁止下载 tiles。他们没有听取允许其下载磁贴的任何理由。政策是他们阻止所有 tile 下载器,无论它如何工作。

如果图 block 层无关紧要,请使用另一个图 block 层,例如 MapQuest Open。​​

现在,要下载图 block ,JTileDownloader 是最好的选择,因为它在服务器上很容易,在请求和按四分位数顺序下载图 block 之间有延迟。您将不得不更改 User-Agent 字符串,为此您需要重新编译项目。下载源代码:

svn co http://svn.openstreetmap.org/applications/utils/downloading/JTileDownloader/trunk/ JTileDownloader

然后在src/org/...中找到TileListDownloader.java,在里面找到一个字符串Agent。将JTileDownloader替换成任何其他词,然后在JTD根目录下用ant run编译运行新版本。

请注意,您不应下载太多图 block ,即超过几千个。如果您需要更多,请安装 PostgreSQL 和 Mapnik 并在本地生成任意数量的瓦片。

关于dictionary - JTileDownloader 被 Mapnik 禁止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23587690/

相关文章:

python - 在嵌套字典中查找最大值时出现 KeyError

arrays - 在 Swift 中将 NSArray 转换为 Array 会对数组值产生 nil

javascript - 如何使用传单将世界地图居中

openstreetmap - 在 openlayers 3 中重新投影 map 范围

python - Mac os x 10.8 : Fatal Python error: PyThreadState_Get: no current thread importing mapnik 上的 Homebrew + Python

docker - 配置 apache 和渲染时套接字绑定(bind)失败

maps - 我正在尝试使用 mapnik mod_tile 和 apache 配置我自己的 map 服务器,没有生成任何图 block ,我收到以下错误

python - 如何在 Python 中初始化不同空列表的字典?

python - 将字典键替换为列表中的值

leaflet - 使用 Leaflet : customize design? 自动补全