From dea2729eee0b879aab695b44cd78b6cee1c83987 Mon Sep 17 00:00:00 2001 From: Jochen Klar Date: Sat, 12 Aug 2017 16:08:22 +0200 Subject: [PATCH] use entry_points --- setup.py | 8 +++++--- wms_downloader/download.py | 16 ++++++++-------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/setup.py b/setup.py index 3ae2840..700cfc7 100644 --- a/setup.py +++ b/setup.py @@ -16,8 +16,8 @@ 'PyYAML' ] -scripts = [ - 'bin/wms-downloader' +console_scripts = [ + 'wms-downloader=wms_downloader.download:main' ] setup( @@ -33,5 +33,7 @@ packages=find_packages(), install_requires=requirements, classifiers=[], - scripts=scripts, + entry_points={ + 'console_scripts': console_scripts + } ) diff --git a/wms_downloader/download.py b/wms_downloader/download.py index 2065a39..5d7e7e8 100755 --- a/wms_downloader/download.py +++ b/wms_downloader/download.py @@ -30,7 +30,7 @@ def main(): parser = argparse.ArgumentParser(usage='Downloads large geo TIFF files from a WMS service.') - parser.add_argument('config', nargs='?', default='config.yml', help='config file [default: config.yml]') + parser.add_argument('config', help='config file') args = parser.parse_args() with open(args.config) as f: @@ -54,15 +54,14 @@ def download_images(config): for west in west_range: for south in south_range: - filename = '%(directory)s/%(west)s_%(south)s_%(resolution)s.gdal.tif' % { - 'directory': config['directory'], + filename = os.path.join(config['directory'], '%(west)s_%(south)s_%(resolution)s.gdal.tif' % { 'west': west, 'south': south, 'resolution': config['resolution'] - } + }) if not os.path.exists(filename + '.aux.xml'): - print(filename) + print('fetching %s' % filename) xml_params = { 'west': west, @@ -83,9 +82,10 @@ def download_images(config): def create_vrt_file(config): - args = ['gdalbuildvrt', '-a_srs', config['projection'], '-overwrite', config['vrtfile']] - args += glob.glob('%s/*.gdal.tif' % config['directory']) - subprocess.check_call(args) + if not os.path.exists(config['vrtfile']): + args = ['gdalbuildvrt', '-a_srs', config['projection'], config['vrtfile']] + args += glob.glob('%s/*.gdal.tif' % config['directory']) + subprocess.check_call(args) def arange(start, stop, step):