Skip to content

Commit 09f77b9

Browse files
committed
fix: file path modified
1 parent 6621c22 commit 09f77b9

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
setup(
77
name='tileclipper',
8-
version='1.0.0',
8+
version='1.0.1',
99
description='The `TileClipper` package enables users to download map tiles within a specified bounding box from a tile server',
1010
author='Sijan Dhungana',
1111
author_email='[email protected]',

tileclipper/clipper.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from math import floor, pi, log, tan, cos
1010
from concurrent.futures import ThreadPoolExecutor
1111
from tqdm import tqdm
12+
from urllib.parse import urlparse
1213

1314
class TileClipper:
1415
def __init__(self,
@@ -63,11 +64,12 @@ def bbox2tiles(self, zoom, bbox):
6364
def download_tile(self, x, y, zoom):
6465
self.logger.info(f"Zoom Level: {zoom}")
6566
tile_url = self.base_url.replace('{z}', str(zoom)).replace('{x}', str(x)).replace('{y}', str(y))
67+
parsed_url = urlparse(tile_url)
68+
filename = os.path.basename(parsed_url.path)
6669
response = requests.get(tile_url)
6770
if response.status_code == 200:
6871
directory = os.path.join(self.output_folder, f"{zoom}/{x}/")
6972
os.makedirs(directory, exist_ok=True)
70-
filename = tile_url.split('/')[-1] + '.png'
7173
with open(os.path.join(directory, filename), 'wb') as file:
7274
file.write(response.content)
7375
self.logger.info(f"Tile downloaded successfully to: {directory}{filename}")
@@ -94,11 +96,12 @@ def download_tiles(self, zoom_start, zoom_end):
9496
def download_tile_with_progress_local(self, x, y, zoom, progress_bar):
9597
self.logger.info(f"Zoom Level: {zoom}")
9698
tile_url = self.base_url.replace('{z}', str(zoom)).replace('{x}', str(x)).replace('{y}', str(y))
99+
parsed_url = urlparse(tile_url)
100+
filename = os.path.basename(parsed_url.path)
97101
response = requests.get(tile_url)
98102
if response.status_code == 200:
99103
directory = os.path.join(self.output_folder, f"{zoom}/{x}/")
100104
os.makedirs(directory, exist_ok=True)
101-
filename = tile_url.split('/')[-1] + '.png'
102105
local_file_path = os.path.join(directory, filename)
103106

104107
with open(local_file_path, 'wb') as file:
@@ -111,9 +114,10 @@ def download_tile_with_progress_local(self, x, y, zoom, progress_bar):
111114
def download_tile_with_progress_s3(self, x, y, zoom, progress_bar):
112115
self.logger.info(f"Zoom Level: {zoom}")
113116
tile_url = self.base_url.replace('{z}', str(zoom)).replace('{x}', str(x)).replace('{y}', str(y))
117+
parsed_url = urlparse(tile_url)
118+
filename = os.path.basename(parsed_url.path)
114119
response = requests.get(tile_url)
115120
if response.status_code == 200:
116-
filename = tile_url.split('/')[-1] + '.png'
117121
s3_client = boto3.client(
118122
service_name='s3',
119123
aws_access_key_id=self.aws_access_key,

0 commit comments

Comments
 (0)