ScreenTranslator/share/updates/translators.py

39 lines
1.0 KiB
Python
Raw Normal View History

2020-03-15 18:10:26 +07:00
import sys
import os
import hashlib
download_url = "https://raw.githubusercontent.com/OneMoreGres/ScreenTranslator/master"
if len(sys.argv) > 1:
download_url = sys.argv[1]
subdir = 'translators'
2020-04-05 17:06:08 +07:00
root = os.path.abspath(os.path.basename(__file__) + '/../../..')
2020-03-15 18:10:26 +07:00
translators_dir = root + '/' + subdir
files = {}
2020-04-05 17:06:08 +07:00
it = os.scandir(translators_dir)
for f in it:
if not f.is_file() or not f.name.endswith('.js'):
continue
name = f.name[:f.name.index('.')]
files[name] = f.name
2020-03-15 18:10:26 +07:00
print(',"translators":{')
comma = ''
2020-04-12 21:01:59 +07:00
for name in sorted(files.keys()):
file_name = files[name]
2020-03-15 18:10:26 +07:00
print(' {}"{}": {{"files":['.format(comma, name))
comma = ','
md5 = hashlib.md5()
2020-04-05 17:06:08 +07:00
size = 0
2020-03-15 18:10:26 +07:00
with open(os.path.join(translators_dir, file_name), 'rb') as f:
2020-04-05 17:06:08 +07:00
data = f.read()
size = len(data)
md5.update(data)
print(' {{"url":"{}/{}", "path":"$translators$/{}", "md5":"{}", "size":{}}}'.format(
download_url, subdir + '/' + file_name, file_name,
md5.hexdigest(), size))
2020-03-15 18:10:26 +07:00
print(' ]}')
print('}')