diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2019-12-17 22:57:16 +0100 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2019-12-17 22:57:16 +0100 |
| commit | 4817130d268df7b5bd83bbc5fda0f1d5a75a0a09 (patch) | |
| tree | e7302faa45a210a942ef968451aedc1163aee528 /regenerate_index_html.py | |
| parent | de6a04d8d600df2a0ac5896c5b82f243b5f8586c (diff) | |
| download | PROJ-data-4817130d268df7b5bd83bbc5fda0f1d5a75a0a09.tar.gz PROJ-data-4817130d268df7b5bd83bbc5fda0f1d5a75a0a09.zip | |
Add sync_to_cdn.sh and regenerate_index_html.py; refresh index.html
Diffstat (limited to 'regenerate_index_html.py')
| -rw-r--r-- | regenerate_index_html.py | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/regenerate_index_html.py b/regenerate_index_html.py new file mode 100644 index 0000000..ebc3aa7 --- /dev/null +++ b/regenerate_index_html.py @@ -0,0 +1,59 @@ +from osgeo import gdal +import datetime +import glob +import os + +dirnames = [] +links = [] +for dirname in glob.glob('*'): + if not os.path.isdir(dirname): + continue + dirnames.append(dirname) + +total_size = 0 +set_files = set() +for dirname in sorted(dirnames): + filenames = [] + readme_filename = None + for f in glob.glob(dirname + '/*'): + f = os.path.basename(f) + if f.startswith('README'): + assert not readme_filename + readme_filename = f + else: + filenames.append(f) + links.append('</ul><ul>') + for f in [readme_filename] + sorted(filenames): + + assert f not in set_files + set_files.add(f) + + full_filename = os.path.join(dirname, f) + ds = gdal.OpenEx(full_filename) + desc = '' + if ds: + imageDesc = ds.GetMetadataItem('TIFFTAG_IMAGEDESCRIPTION') + if imageDesc: + pos = imageDesc.find('. Converted from') + if pos >= 0: + imageDesc = imageDesc[0:pos] + desc = ': ' + imageDesc + + size_str = '' + size = os.stat(full_filename).st_size + total_size += size + if size > 1024 * 1024: + size_str = '. Size: %.1f MB' % (size / (1024. * 1024)) + + if f.startswith('README'): + last_modified = '' + else: + last_modified = '. Last modified: ' + datetime.datetime.utcfromtimestamp(os.stat(full_filename).st_mtime).strftime("%Y/%m/%d") + + links.append('<li><a href="%s">%s</a>%s%s%s</li>' % (f, f, desc, size_str, last_modified)) + +total_size_str = '%d MB' % (total_size // (1024 * 1024)) + +content = '<!-- This is a generated file by regenerate_index_html.py. Do not modify !!!! -->\n\n' +content += open('index.html.in', 'rt').read().replace('${LINKS_WILL_BE_ADDED_HERE_BY_REGENERATE_INDEX_HTML}', '\n'.join(links)).replace('${TOTAL_SIZE}', total_size_str) +open('index.html', 'wt').write(content) |
