diff options
author | emkael <emkael@tlen.pl> | 2015-09-01 12:02:55 +0200 |
---|---|---|
committer | emkael <emkael@tlen.pl> | 2015-09-01 12:23:13 +0200 |
commit | 08bd0d1ec1662372f17831cf551224ff762a1b72 (patch) | |
tree | 472a0993e3d79dae361a68fcd7bc8a503cb3d6d1 | |
parent | 2aae8272b822f59705220d927385c1ba7ceba50e (diff) |
* path parsing and file existence checks
-rw-r--r-- | README.md | 6 | ||||
-rw-r--r-- | bidding_data.py | 19 |
2 files changed, 18 insertions, 7 deletions
@@ -58,14 +58,14 @@ mdb-export PLIK.bws RoundData > DANE_USTAWIENIA.csv Po wygenerowaniu w/w plików CSV, [`bidding_data.py`](bidding_data.py) przyjmuje następujące parametry: ``` -python bidding_data.py DANE_LICYTACJI.csv DANE_USTAWIENIA.csv KATALOG_ROBOCZY_Z_PREFIKSEM_TURNIEJU +python bidding_data.py DANE_LICYTACJI.csv DANE_USTAWIENIA.csv PLIK_TURNIEJU.html ``` `DANE_LICYTACJI.csv` i `DANE_USTAWIENIA.csv` to pliki z danymi wyeskportowanymi z BWS. -`KATALOG_ROBOCZY_Z_PREFIKSEM_TURNIEJU` to ściezka to katalogu WWW z doklejonym -Parowym prefiksem turnieju (czyli np. `..\www\moj_turniej`). +`PLIK_TURNIEJU.html` to ściezka do pliku turnieju w katalogu WWW +([ŚCIEŻKA]\PREFIX.html). Udostępniany ze skryptem wrapper [`bidding_data.sh`](bidding_data.sh) obsługuje eksport z BWS poprzez `mdb-export`, wystarczy więc: diff --git a/bidding_data.py b/bidding_data.py index d0573af..d2a4106 100644 --- a/bidding_data.py +++ b/bidding_data.py @@ -164,7 +164,7 @@ class JFRBidding: self.__bids = self.__parse_bidding_data( self.__csv_to_list(bidding_file)) self.__tournament_prefix = path.splitext( - path.realpath(file_prefix + '.html'))[0] + path.realpath(file_prefix))[0] self.__tournament_files_match = re.compile( re.escape(self.__tournament_prefix) + '([0-9]{3})\.html') self.__map_board_numbers() @@ -283,12 +283,23 @@ if __name__ == '__main__': argument_parser = argparse.ArgumentParser( description='Display bidding data from BWS files on JFR Pary 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('bidding_file', metavar='BIDDING_FILE', - help='CSV containing bidding data from BWS') + help='CSV containing bidding data from BWS', + type=file_path) argument_parser.add_argument('lineup_file', metavar='LINEUP_FILE', - help='CSV containing lineup data from BWS') + help='CSV containing lineup data from BWS', + type=file_path) argument_parser.add_argument('path', metavar='PATH', - help='tournament path with JFR prefix') + help='tournament path (to PREFIX.html)', + type=file_path) arguments = argument_parser.parse_args() |