diff options
Diffstat (limited to 'scraper/util.py')
| -rw-r--r-- | scraper/util.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/scraper/util.py b/scraper/util.py index 1ee2ad52..ad7b1f4d 100644 --- a/scraper/util.py +++ b/scraper/util.py @@ -452,6 +452,35 @@ def fetch_google_lookup(name, item_key='key'): lookup[rec[item_key]] = rec return lookup +def fetch_verified_paper_lookup(): + """Fetch a lookup keyed by dataset, where each dataset points to a hash of valid or invalid papers...""" + keys, rows = fetch_google_sheet('verifications') + verified_lookup = {} + for row in rows: + rec = {} + for index, key in enumerate(keys): + rec[key] = row[index] + if rec['dataset'] not in verified_lookup: + verified_lookup[rec['dataset']] = {} + if str(rec['uses_dataset']) == '1': + verified_lookup[rec['dataset']][rec['paper_id']] = rec + return verified_lookup + +def update_or_append_worksheet(name, form): + worksheet = fetch_worksheet(name) + keys = worksheet.row_values(1) + row = [ form[key] if key in form else '' for key in keys ] + try: + cell = worksheet.find(form['paper_id']) + except: + cell = None + + if cell: + for i, item in enumerate(row): + worksheet.update_cell(cell.row, i+1, item) + else: + worksheet.append_row(row) + def load_countries(): countries = read_json('countries.json') lookup = {} |
