From 5e4f38688e4c14846b8264970a79c482c1ca7012 Mon Sep 17 00:00:00 2001 From: Pacien TRAN-GIRARD Date: Fri, 24 Oct 2014 01:45:28 +0200 Subject: Initial commit --- banapedia/api/Query.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 banapedia/api/Query.py (limited to 'banapedia/api/Query.py') diff --git a/banapedia/api/Query.py b/banapedia/api/Query.py new file mode 100644 index 0000000..7453df9 --- /dev/null +++ b/banapedia/api/Query.py @@ -0,0 +1,23 @@ +import urllib.parse +import urllib.request +import json + +__author__ = 'pacien' + + +class Query: + def __init__(self, base_url="", params={}, encoding="utf8"): + self.base_url = base_url + self.params = params + self.encoding = encoding + + def fetch_raw_result(self): + post_query = urllib.parse.urlencode(self.params) + post_query = post_query.encode(self.encoding) + document = urllib.request.urlopen(self.base_url, post_query) + return document.read().decode(self.encoding) + + +class JSONQuery(Query): + def fetch_result(self): + return json.loads(self.fetch_raw_result()) -- cgit v1.2.3