From 16541c522e4f88c7d7b66c9d6168f7fb3c36d358 Mon Sep 17 00:00:00 2001 From: mohammed akmal miah Date: Mon, 17 Jan 2022 12:30:07 +0000 Subject: [PATCH] update csrf token in urlopen_json --- google/refine/refine.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/google/refine/refine.py b/google/refine/refine.py index e943d1f..7e21ea5 100644 --- a/google/refine/refine.py +++ b/google/refine/refine.py @@ -118,6 +118,10 @@ class RefineServer(object): """Open a Refine URL, optionally POST data, and return parsed JSON.""" response = json.loads(self.urlopen(*args, **kwargs).read()) if 'code' in response and response['code'] not in ('ok', 'pending'): + if 'Missing or invalid csrf_token parameter' == response['message']: + self.get_csrf_token() + response = json.loads(self.urlopen(*args, **kwargs).read()) + return response error_message = ('server ' + response['code'] + ': ' + response.get('message', response.get('stack', response))) raise Exception(error_message)