diff --git a/cleanup/add_date.py b/cleanup/add_date.py index 47af0e0..b51476b 100644 --- a/cleanup/add_date.py +++ b/cleanup/add_date.py @@ -73,8 +73,6 @@ for doc in titles: ('[^\d]([^, (-]+? \d+, \d{4})', '%B %d, %Y', '%Y-%m-%d'), - ('([^\d]{3} \d+ \d{4})', '%b %d %Y', '%Y-%m-%d'), - ('[^\d]([^,]{3}, \d{4})', '%b, %Y', '%Y-%m'), ('[^\d]([^,]+?, \d{4})', '%B, %Y', '%Y-%m'), ('[^\d]([^ (]+?, \d{4})', '%B, %Y', '%Y-%m'), diff --git a/cleanup/add_volume.py b/cleanup/add_volume.py index 7fd8203..26d3eb5 100755 --- a/cleanup/add_volume.py +++ b/cleanup/add_volume.py @@ -17,31 +17,26 @@ else: conditions = [] for regex, fragments in ( - ['Vol. (\d+), No. (\d+)', ['Vol.', 'No.']], - ['Vol (\d+) no (\d+)', [' Vol ', ' no ']], - ['Vol:(\d+) #(\d+)', ['Vol:', '#']], - #['no (\d+) (\d+)-', [' no ']], + ['Vol. \d+, No. \d+', ['Vol.', 'No.']], + ['Vol \d+ no \d+', [' Vol ', ' no ']], + ['Vol:\d+ #\d+', ['Vol:', '#']], ): - query = { - 'conditions': [ - {'key': 'title', 'operator': '=', 'value': fragment} - for fragment in fragments - ] + conditions, - 'operator': '&' - } for doc in api.findDocuments({ - 'query': query, - 'keys': ['id', 'title', 'volume', 'issue'], + 'query': { + 'conditions': [ + {'key': 'title', 'operator': '=', 'value': fragment} + for fragment in fragments + ] + conditions, + 'operator': '&' + }, + 'keys': ['id', 'title', 'volume'], 'range': [0, 10000] })['data']['items']: - if not doc.get('volume', ''): + if 'Vol' not in doc.get('volume', ''): m = re.compile(regex).findall(doc['title']) if m: print(m[0], doc['id'], doc['title']) - volume = m[0][0] - issue = m[0][1] api.editDocument({ 'id': doc['id'], - 'volume': volume, - 'issue': issue, + 'volume': m[0].strip() }) diff --git a/cleanup/search_replace.py b/cleanup/search_replace.py deleted file mode 100755 index 88b0b54..0000000 --- a/cleanup/search_replace.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/python3 -import re -import sys - -import ox -import ox.api - -site = 'archive.leftove.rs' -api = ox.api.signin('https://%s/api/' % site) - - -collection = sys.argv[1] -search = sys.argv[2] -replace = sys.argv[3] - -for doc in api.findDocuments({ - 'query': { - 'conditions': [ - {'key': 'collection', 'operator': '=', 'value': collection} - ], - 'operator': '&' - }, - 'keys': ['id', 'title'], - 'range': [0, 10000] -})['data']['items']: - title = doc['title'].replace(search, replace) - if title != doc['title']: - print(doc['id'], doc['title']) - print('\t->', title) - api.editDocument({ - 'id': doc['id'], - 'title': title - }) diff --git a/config.jsonc b/config.jsonc index 823ab4e..2e7904d 100644 --- a/config.jsonc +++ b/config.jsonc @@ -282,7 +282,6 @@ "type": "string", "columnWidth": 128, "find": true, - "additionalSort": [{"key": "volume", "operator": "-"}, {"key": "issue", "operator": "-"}], "sort": true }, { @@ -291,7 +290,6 @@ "type": "string", "columnWidth": 128, "find": true, - "additionalSort": [{"key": "issue", "operator": "-"}], "sort": true }, {