Spotter-VM/sahana/sahana-lang-csv.py

33 lines
939 B
Python
Raw Normal View History

#!/usr/bin/env python
from __future__ import print_function
from pprint import pprint
import csv
import os
import sys
import xlrd
if len(sys.argv) == 1:
print('Usage: {} input.(csv|xls)'.format(sys.argv[0]))
sys.exit(1)
basename, extension = os.path.splitext(sys.argv[1].lower())
translations = {}
if extension == '.csv':
with open(sys.argv[1], 'rb') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='\'')
for line in reader:
translations[line[1].encode('utf-8')] = line[2].encode('utf-8')
elif extension == '.xls':
sheet = xlrd.open_workbook(sys.argv[1]).sheet_by_index(0)
for i in range(1, sheet.nrows):
row = sheet.row(i)
translations[row[1].value.encode('utf-8')] = row[2].value.encode('utf-8')
else:
print('Unknown input file extension')
sys.exit(1)
with open('{}.py'.format(basename), 'wb') as langfile:
pprint(translations, langfile)