下载地图瓦片并将它们存储在MBTiles数据库中
项目描述
download-tiles
下载地图瓦片并将它们存储在MBTiles数据库中
安装
使用pip
安装此工具
$ pip install download-tiles
使用方法
此工具从指定的TMS(瓦片地图服务器)服务器下载指定边界框和缩放级别的瓦片,并将这些瓦片存储在MBTiles SQLite数据库中。它是围绕Landez Python库的命令行包装器。
请负责任地使用此工具。请咨询您与之交互的瓦片服务器的使用政策,例如OpenStreetMap瓦片使用政策。
运行以下命令将下载OpenStreetMap的0-3级缩放级别,共85个瓦片,并将它们存储在名为world.mbtiles
的SQLite数据库中
download-tiles world.mbtiles
您可以使用命令选项自定义要下载的瓦片和缩放级别
--zoom-levels=0-3
或 -z=0-3
要下载的不同缩放级别。指定单个数字,例如15
,或数字范围,例如0-4
。请小心使用此设置,因为您很容易超过底层瓦片服务器请求的限制。
--bbox=3.9,-6.3,14.5,10.2
或 -b=3.9,-6.3,14.5,10.2
要获取的边界框。应指定为min-lon,min-lat,max-lon,max-lat
。您可以使用bboxfinder.com为不同区域找到这些。
--city=london
或 --country=madagascar
这些选项可以使用代替--bbox
。指定的城市或国家将使用Nominatum API进行查找,并用于推导边界框。
--show-bbox
使用此选项输出为--city
或--country
检索到的边界框,而无需下载任何瓦片。
--name=名称
为这个瓦片集合命名,用于在metadata
表的name
字段中。如果没有指定,将使用UUID,或者如果你使用了--city
或--country
,则名称将设置为该地点的全名。
--attribution="归因字符串"
将归因字符串烘焙到metadata
表中。默认为© OpenStreetMap contributors
,除非你使用--tiles-url
指定了替代的瓦片服务器,在这种情况下,你应该指定一个自定义的归因字符串。
你可以使用--attribution=osm
快捷方式来指定© OpenStreetMap contributors
的值,而无需完整地键入。
--tiles-url=https://...
要使用的瓦片服务器URL。这应该包括{z}
、{x}
和{y}
指定符,并且可以可选地包括{s}
用于子域名。
这里使用的默认URL是针对OpenStreetMap的,http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png
--tiles-subdomains=a,b,c
用于{s}
参数的子域名的逗号分隔列表。
--verbose
使用此选项来打开详细日志。
--cache-dir=/tmp/tiles
提供一个目录来缓存运行之间下载的瓦片。如果你担心你可能没有使用正确的边界框或缩放级别选项,这可能会很有用。
开发
要为此工具做出贡献,首先检出代码。然后创建一个新的虚拟环境
cd download-tiles
python -mvenv venv
source venv/bin/activate
或者如果你正在使用pipenv
pipenv shell
现在安装依赖项和测试
pip install -e '.[test]'
要运行测试
pytest
项目详情
下载download-tiles-0.4.1.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eccd170e24bc12bb3f8ff201a986f0c8fa78c3f3fe6385b70b1de2c07ce2b380 |
|
MD5 | e5b16af3e8989610809778f0110e37dd |
|
BLAKE2b-256 | e47fbda25d0d77940d33a94b6b97c814bbc94cd9bfe476f2bdafa52adc6cda89 |
下载download_tiles-0.4.1-py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3e8aa888c6df8a2bd1d940e55b460fae33b3122afb0380db4e3af8b3cc181bdd |
|
MD5 | 60c83763c0dada5d4a51ddd2a24c2fbd |
|
BLAKE2b-256 | 637681f3ae45a37f370b3883ab596c54262f3c6c7028560d3a89485c7ecb5a33 |