summaryrefslogtreecommitdiff
path: root/scraper/util.py
diff options
context:
space:
mode:
Diffstat (limited to 'scraper/util.py')
-rw-r--r--scraper/util.py29
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 = {}