Exemple #1
0
def subscription(request):
	print request
	if request.method == 'GET':
		challenge = request.GET['hub.challenge']
		return HttpResponse(challenge)
	elif request.method == 'POST':
		subscription_objects = json.loads(request.body)
		api = InstagramAPI(client_id=INSTAGRAM_CLIENT_ID, client_secret=INSTAGRAM_CLIENT_SECRET)
		for obj in subscription_objects:
			try:
				photo = api.media(obj['object_id'])
				parse_photo = ParsePy.ParseObject("instagram_photo")
				parse_photo.url = photo.images['standard_resolution'].url
				parse_photo.url_thumb = photo.images['thumbnail'].url
				parse_photo.timestamp = photo.created_time
				likes = []
				for user in photo.likes:
					likes.append(parse_user_from_instagram(user))
				parse_photo.likes = likes;
				comments = []
				for comment in photo.comments:
					comments.appent(parse_comment_from_instagram(comment))
				parse_photo.comments(comments)
				parse_photo.location = parse_location_from_instagram(photo.location)
				parse_photo.save()
			except AttributeError:
				pass
		print request
Exemple #2
0
def get_item(instagram_id):
    api = InstagramAPI(client_id='f7a905471d5c4f29a8f6797c83499bb6')
    media = api.media(instagram_id)

    item = Item()
    item.link = media.link
    if(type(media.caption) is not NoneType):
        item.caption = media.caption.text
    item.image_url = media.images['standard_resolution'].url
    item.thumbnail_url = media.images['thumbnail'].url
    item.user_name = media.user.username
    item.user_profile_url = media.user.profile_picture
    item.create_time = media.created_time

    return item
Exemple #3
0
 def get(self):
     action = request.args.get('action', 'like')
     mid = request.args.get('mid', '')
     api = InstagramAPI(access_token=session.get('access_token', ''))
     if action == 'like':
         api.like_media(media_id=mid)
         media = api.media(mid)
         m = LikeModel(ukey=session.get('ukey', ''), media=mid,
                       username=session.get('username', ''),
                       media_username=media.user.username)
         db.session.add(m)
         add_show(media)
     if action == 'unlike':
         api.unlike_media(media_id=mid)
         m = LikeModel.query.get((session.get('ukey', ''), mid))
         if m:
             db.session.delete(m)
     db.session.commit()
     return json_response('ok')
Exemple #4
0
 def get(self):
     likes = (LikeModel.query
              .filter(LikeModel.ukey == '448621019')
              .order_by(LikeModel.date_created.desc())
              .limit(5).all())
     access_token = random.choice(OPEN_ACCESS_TOKENS)
     api = InstagramAPI(access_token=access_token)
     media = api.media(likes[0].media)
     if isinstance(media, InstagramAPIError):
         return notfound(u'服务器暂时出问题了')
     medias = ShowModel.query.filter(
         ShowModel.mid.in_([x.media for x in likes[1:]]))
     users = (RecommendModel.query
              .order_by(RecommendModel.order.desc())
              .limit(24).all())
     return render('home.html',
                   media=media,
                   medias=medias,
                   users=users)
Exemple #5
0
    print('[9] Save')
    print('[0] Exit')

    user_choice = input("Pick a menu item: ")
    user_choice = user_choice.strip()

    if user_choice == "0":
        exit_flag = True

    if user_choice == "1":
        # Add new candidate picture
        picture_id = input("    * Enter the picture ID: ")
        picture_id = picture_id.strip()

        try:
            add_media = api.media(media_id=picture_id)
            media_found = True
        except:
            print("    * media search for ID = %s failed." % (picture_id))
            continue
            media_found = False

        if media_found:
            #print("debug 1")
            #print (type(add_media))
            l_media_id = add_media.id
            l_username = add_media.user.username
            l_full_name = add_media.user.full_name
            l_userid = add_media.user.id
            l_thumbnail_url = add_media.get_thumbnail_url()
            l_low_resolution_url = add_media.get_low_resolution_url()
Exemple #6
0
def item(id):
    api = InstagramAPI(client_id=CLIENT_ID)
    item = api.media(media_id=id)
    return render_template("_mimage.html", item=item)