summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2015-08-31 15:26:39 +0200
committeremkael <emkael@tlen.pl>2015-08-31 15:26:39 +0200
commita3c0db4daac001bd4dd6d67ff374e04e42b305be (patch)
tree712086111bee49fd064b2d8f6762c54fc2747986
parent6b79e8d7177a8a7899563506fb57ca7b192db4e8 (diff)
* file path validation
-rw-r--r--virtual_table.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/virtual_table.py b/virtual_table.py
index dd0139a..74a99b6 100644
--- a/virtual_table.py
+++ b/virtual_table.py
@@ -13,7 +13,7 @@ from bs4.element import NavigableString
class JFRVirtualTable:
def __parse_filepaths(self, prefix):
- file_path = path.realpath(prefix + '.html')
+ file_path = path.realpath(prefix)
tournament_path = path.dirname(file_path)
tournament_prefix = path.splitext(path.basename(file_path))[0]
@@ -300,8 +300,17 @@ if __name__ == '__main__':
argument_parser = argparse.ArgumentParser(
description='Fix display for virtual tables in JFR Pary result pages')
+
+ def file_path(filepath):
+ filepath = unicode(filepath, sys.getfilesystemencoding())
+ if path.isfile(filepath):
+ return filepath
+ else:
+ argument_parser.error('File %s does not exist' % filepath)
+
argument_parser.add_argument('path', metavar='PATH',
- help='tournament path with JFR prefix')
+ help='tournament path with JFR prefix',
+ type=file_path)
argument_parser.add_argument('-t', '--text', metavar='HEADER',
default='Wirtualny stolik:',
help='traveller header for virtual score')