diff --git a/ckanext/odsh/validation.py b/ckanext/odsh/validation.py index f52249b996d9debecd8f76a6e70c4729199204ae..fadf00882c513864d339a2f83ec76f8c5a1dcc87 100644 --- a/ckanext/odsh/validation.py +++ b/ckanext/odsh/validation.py @@ -1,6 +1,6 @@ # This Python file uses the following encoding: utf-8 import logging -import unicodecsv as csv +import csv import re import urllib.request, urllib.error, urllib.parse import json @@ -214,24 +214,21 @@ def known_spatial_uri(key, data, errors, context): data[('extras', new_index+1, 'value')] = poly return - mapping_file = tk.config.get('ckanext.odsh.spatial.mapping') - try: - mapping_file = urllib.request.urlopen(mapping_file) - except Exception: - raise Exception("Could not load spatial mapping file!") + mapping_path = tk.config.get('ckanext.odsh.spatial.mapping') not_found = True spatial_text = str() spatial = str() - cr = csv.reader(mapping_file, delimiter="\t", encoding='utf-8') - for row in cr: + with open(mapping_path, newline='') as mapping_file: + cr = csv.reader(mapping_file, delimiter="\t") + for row in cr: if row[0] == value: not_found = False spatial_text = row[1] loaded = json.loads(row[2]) spatial = json.dumps(loaded['geometry']) break - if not_found: + if not_found: raise toolkit.Invalid( 'spatial_uri: uri unknown') diff --git a/dev-requirements.txt b/dev-requirements.txt index c574e4eaf013c487e6c63e0048eb9132b71c2627..296c410ff10a01f5be261393623ad1b427c48a89 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -165,7 +165,6 @@ traceback2==1.4.0 translationstring==1.3 typing==3.6.4 tzlocal==1.3 -unicodecsv==0.14.1 unittest2==1.1.0 urllib3==1.23 vdm==0.13