diff options
author | Philip Sargent <philip.sargent@klebos.com> | 2021-04-27 00:32:01 +0100 |
---|---|---|
committer | Philip Sargent <philip.sargent@klebos.com> | 2021-04-27 00:32:01 +0100 |
commit | e236e792ec7c38248a496e8443c4e549c383c93a (patch) | |
tree | fcc9e9d847189e0366753d5811f02c00469a02ae /parsers/caves.py | |
parent | 9e7414e0e002d6a8c3c3458fb9557ffd46ddd455 (diff) | |
download | troggle-e236e792ec7c38248a496e8443c4e549c383c93a.tar.gz troggle-e236e792ec7c38248a496e8443c4e549c383c93a.tar.bz2 troggle-e236e792ec7c38248a496e8443c4e549c383c93a.zip |
todo: parsing caves
Diffstat (limited to 'parsers/caves.py')
-rw-r--r-- | parsers/caves.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/parsers/caves.py b/parsers/caves.py index 6b17878..c969acd 100644 --- a/parsers/caves.py +++ b/parsers/caves.py @@ -19,6 +19,12 @@ django.db.transaction.TransactionManagementError: An error occurred in the current transaction. You can't execute queries until the end of the 'atomic' block. ''' +todo='''- Update does not work when a cave id is in the pending list but a proper cave description file exists + and is being imported. It should work. But currently Django aborts and he file is not read in. + + - Cannot use Edit This Page for pendingcaves.txt_edit as Edit This Page is expecting an html file. + So we will need a separate file-editing capability just for this configuration file. +''' entrances_xslug = {} caves_xslug = {} areas_xslug = {} @@ -133,7 +139,13 @@ def readcaves(): ''' # For those caves which do not have cave_data/1623-xxx.html XML files even though they exist and have surveys # should put this in a simple list which can be edited using 'Edit this file' - pending = settings.PENDING + pending = [] + fpending = Path(settings.CAVEDESCRIPTIONS, "pendingcaves.txt") + if fpending.is_file(): + with open(fpending, "r") as fo: + cids = fo.readlines() + for cid in cids: + pending.append(cid.rstrip('\n')) with transaction.atomic(): print(" - Deleting Caves and Entrances") @@ -372,6 +384,7 @@ def readcave(filename): primary = primary) caves_xslug[slug] = cs except Exception as ex: + # This fails to do an update! It just crashes.. to be fixed message = " ! Cave update/create failure : %s, skipping file cave_data/%s with exception\nException: %s" % (slug, context, ex.__class__) DataIssue.objects.create(parser='caves', message=message) print(message) |