Skip to content

Commit d79e7ce

Browse files
committed
Implement Map Functionality
1 parent fc47415 commit d79e7ce

File tree

2 files changed

+23
-8
lines changed

2 files changed

+23
-8
lines changed

loklak.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515

1616
class Loklak (object):
17-
baseUrl = 'http://loklak.org/api/'
17+
baseUrl = 'http://loklak.org/'
1818
name = None
1919
followers = None
2020
following = None
@@ -31,7 +31,7 @@ class Loklak (object):
3131
data = {}
3232

3333
def status(self):
34-
statusAPI = 'status.json'
34+
statusAPI = 'api/status.json'
3535
Url = self.baseUrl+statusAPI
3636
r = requests.get(Url)
3737
if r.status_code == 200:
@@ -41,7 +41,7 @@ def status(self):
4141
return json.dumps(r)
4242

4343
def hello(self):
44-
helloAPI = 'hello.json'
44+
helloAPI = 'api/hello.json'
4545
Url = self.baseUrl+helloAPI
4646
r = requests.get(Url)
4747
if r.status_code == 200:
@@ -51,7 +51,7 @@ def hello(self):
5151
return json.dumps(r)
5252

5353
def geocode(self, places=None):
54-
geoAPI = 'geocode.json'
54+
geoAPI = 'api/geocode.json'
5555
Url = self.baseUrl+geoAPI
5656
params = {}
5757
params['places'] = places
@@ -62,9 +62,17 @@ def geocode(self, places=None):
6262
r = {}
6363
return json.dumps(r)
6464

65+
def map(self, latitude, longitude, width=500, height=500, zoom=8, text=""):
66+
mapAPI = 'vis/map.png'
67+
params = {'text': text, 'mlat': latitude, 'mlon': longitude, 'width': width, 'height': height, 'zoom': zoom}
68+
r = requests.get(self.baseUrl + mapAPI, params=params, stream=True)
69+
if r.status_code == 200:
70+
return r.raw.read()
71+
else:
72+
return ''
6573

6674
def peers(self):
67-
peersAPI = 'peers.json'
75+
peersAPI = 'api/peers.json'
6876
Url = self.baseUrl+peersAPI
6977
r = requests.get(Url)
7078
if r.status_code == 200:
@@ -74,7 +82,7 @@ def peers(self):
7482
return json.dumps(r)
7583

7684
def user(self, name = None, followers=None, following=None):
77-
userAPI = 'user.json'
85+
userAPI = 'api/user.json'
7886
Url = self.baseUrl+userAPI
7987
self.name = name
8088
self.followers = followers
@@ -110,7 +118,7 @@ def settings(self):
110118
return json.dumps(r)
111119

112120
def search(self, q=None, since=None, until=None, fromUser=None):
113-
searchAPI = 'search.json'
121+
searchAPI = 'api/search.json'
114122
Url = self.baseUrl+searchAPI
115123
self.q = q
116124
self.since = since
@@ -138,7 +146,7 @@ def search(self, q=None, since=None, until=None, fromUser=None):
138146
return json.dumps(r)
139147

140148
def aggregations(self, q=None, since=None, until=None, fields=None, limit=None):
141-
aggregationsAPI = 'search.json'
149+
aggregationsAPI = 'api/search.json'
142150
Url = self.baseUrl+aggregationsAPI
143151
self.q = q
144152
self.since = since

sample.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
import unittest
2+
import shutil
3+
import tempfile
24
from loklak import Loklak
35
from pprint import pprint
46

@@ -38,6 +40,11 @@
3840
geocode = l.geocode(['New York', 'Singapore'])
3941
pprint(geocode)
4042

43+
# Loklak Map API
44+
png_data = l.map(17.582729, 79.118320, 512, 512, 12, 'Hello')
45+
path = tempfile.mkstemp(suffix=".png")[1]
46+
open(path, 'wb').write(png_data)
47+
4148
#######################################
4249
# Users API
4350

0 commit comments

Comments
 (0)