浏览代码

created search_for location method returns geocoding of an address

mk200789 10 年之前
父节点
当前提交
723dbf6579

+ 11 - 0
hackathon_starter/hackathon/scripts/instagram.py

@@ -9,6 +9,8 @@ import urllib
 import urllib2
 import json
 import simplejson as json2
+import googlemaps
+from django.conf import settings
 
 authorization_url = 'https://api.instagram.com/oauth/authorize/?client_id='
 access_token_url = 'https://api.instagram.com/oauth/access_token'
@@ -141,3 +143,12 @@ class InstagramOauthClient(object):
 		content = json2.loads(req.content)
 		data = content['data']
 		return data
+
+	def search_for_location(self, address, access_token):
+		gmaps = googlemaps.Client(key=settings.GOOGLEMAP_API_KEY)
+		#geocoding and address
+		geocode_result = gmaps.geocode(address)
+		
+		return geocode_result
+
+		

+ 1 - 0
hackathon_starter/hackathon/urls.py

@@ -20,6 +20,7 @@ urlpatterns = patterns('',
     url(r'^instagram/$', views.instagram, name='instagram'),
     url(r'^instagram_login/$', views.instagram_login, name='instagram_login'),
     url(r'^instagramUser/$', views.instagramUser, name='instagramUser'),
+    url(r'^instagramMediaByLocation/$', views.instagramMediaByLocation, name='instagramMediaByLocation'),#
     url(r'^instagramUserMedia/$', views.instagramUserMedia, name='instagramUserMedia'),
     url(r'^tumblr_login/$', views.tumblr_login, name='tumblr_login'),
 )

+ 13 - 0
hackathon_starter/hackathon/views.py

@@ -202,6 +202,19 @@ def instagramUserMedia(request):
     parsedData = getInstagram.get_user_media(access_token)
     return JsonResponse({'data': parsedData })
 
+def instagramMediaByLocation(request):  
+    if request.method == 'GET':
+        if request.user in User.objects.all():
+            address = request.GET.get('address_field')
+            user_id = User.objects.get(username=request.user).id
+            access_token = Profile.objects.get(user=user_id).oauth_secret
+            geocode_result = getInstagram.search_for_location(address, access_token)
+        else:
+            geocode_result =''
+
+    context = {'title':'Media by location', 'geocode_result':geocode_result}
+    return render(request, 'hackathon/instagram_q.html', context)
+
 
 ##################
 #  LINKED IN API #

+ 2 - 0
hackathon_starter/hackathon_starter/settings.py

@@ -116,3 +116,5 @@ TWITTER_SECRET = 'Yy3a74Z7gvyhxRruJsvUtUl8uK8iv6qKkVqbZSijUxK71Z1qTY'
 INSTAGRAM_CLIENT_ID = '77dc10b9e3624e908ce437c0a82da92e'
 INSTAGRAM_CLIENT_SECRET = '8bcf3139857149aaba7acaa61288427f'
 
+GOOGLEMAP_API_KEY = 'AIzaSyA7tttML91EGZ32S_FOOoxu-mbxN9Ojds8'
+