"""示例 2:构造瓦片/WMS/缩略图 URL,并抓一张缩略图保存到本地。 用法: python 02_tiles_and_images.py [mapid] [version] """ from __future__ import annotations import sys from pathlib import Path from _common import make_client, sample_mapid, sample_version def main() -> None: svc = make_client() mapid = sys.argv[1] if len(sys.argv) > 1 else sample_mapid() version = sys.argv[2] if len(sys.argv) > 2 else sample_version() print(f"== 地图 {mapid}/{version} ==") raster = svc.raster_tile_url(mapid, version=version, layer="0") print("raster tile URL:\n ", raster) vector = svc.vector_tile_url(mapid, version=version) print("vector tile URL:\n ", vector) wms = svc.wms_tile_url(mapid, version=version, width=512, height=512) print("WMS tile URL:\n ", wms) thumb_url = svc.thumbnail_url(mapid, version=version, width=256, height=256) print("thumbnail URL:\n ", thumb_url) out = Path(__file__).with_name(f"_thumb_{mapid}_{version}.png") data = svc.thumbnail_bytes(mapid, version=version, width=256, height=256) out.write_bytes(data) print(f"缩略图已保存:{out.name} ({len(data)} bytes)") if __name__ == "__main__": main()