diff options
Diffstat (limited to 'scraper/s2-geocode-server.py')
| -rw-r--r-- | scraper/s2-geocode-server.py | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/scraper/s2-geocode-server.py b/scraper/s2-geocode-server.py index 3aeda881..ad3efd5d 100644 --- a/scraper/s2-geocode-server.py +++ b/scraper/s2-geocode-server.py @@ -106,28 +106,32 @@ def list_dataset_verifications(dataset): dataset: verifications, }) -@app.route('/api/verify/<sha256>', methods=['GET']) -def find_verification(sha256): +@app.route('/api/verify/<dataset>/<sha256>', methods=['GET']) +def find_verification(dataset, sha256): worksheet = fetch_worksheet('verifications') + keys = worksheet.row_values(1) try: - cell = worksheet.find(sha256) + cells = worksheet.findall(sha256) except: return jsonify({ 'error': 'no_match' }) - if cell and cell.row: - keys = worksheet.row_values(1) + if not len(cells): + return jsonify({ + 'error': 'no_match' + }) + for cell in cells: values_list = worksheet.row_values(cell.row) lookup = {} for key, value in zip(keys, values_list): lookup[key] = value - return jsonify({ - 'paper': lookup, - }) - else: - return jsonify({ - 'error': 'no_match' - }) + if lookup['dataset'] == dataset: + return jsonify({ + 'paper': lookup, + }) + return jsonify({ + 'error': 'no_match' + }) @app.route('/api/verify/add', methods=['POST']) def add_verification(): |
