예제 #1
0
def get_users_post(insta_username):

    user_id = get_user_id(insta_username)

    if user_id == None:

        print Fore.RED + "Oooop!!!!!!User Doesn't Exists!!!!!"
        exit()

    request_url = BASE_URL + "users/%s/media/recent/?access_token=%s" % (
        user_id, APP_ACCESS_TOKEN)

    print "Get Request URL:%s" % (request_url)
    user_media = requests.get(request_url).json()

    if user_media['meta']['code'] == 200:

        if len(user_media['data']):
            image_name = user_media['data'][0]['id'] + '.jpg'
            image_url = user_media['data'][0]['images']['standard_resolution'][
                'url']
            urllib.urlretrieve(image_url, image_name)
            print Fore.BLUE + Style.BRIGHT + "Users Post Is Successfully Downloaded"
            return user_media['data'][0]['id']

        else:
            print "THERE IS NOT ANY RECENT POSTS"

    else:
        print "Status Code Other Than 200 Is Recieved"
        return None
예제 #2
0
def Location(insta_username):

    user_id = get_user_id(insta_username)
    request_url = (BASE_URL + "users/%s/media/recent/?access_token=%s" % (user_id, APP_ACCESS_TOKEN))
    print("Get request url: " + request_url)
    user_info = requests.get(request_url).json()
    user_info
    if user_info['meta']['code'] == 200:
        if len(user_info['data']):
            for post in range(0, len(user_info['data'])):
                pic_no = post + 1
                for temp in service:
                    if user_info['data'][post]['caption'] == None:
                        print("Sorry there is no hashtag inside the image...")

                    elif temp in user_info['data'][post]['caption']['text']:
                        print(user_info['data'][post]['caption']['text'])
                        pic_id = user_info['data'][post]['id']
                        comment_text = raw_input("Your comment: ")
                        payload = {"access_token": APP_ACCESS_TOKEN, "text": comment_text}
                        request_url = (BASE_URL + 'media/%s/comments') % (pic_id)
                        print 'POST request url : %s' % (request_url)

                        make_comment = requests.post(request_url, payload).json()

                        if make_comment['meta']['code'] == 200:
                            print "Successfully added a new comment!"
                        else:
                            print "Unable to add comment. Try again!"
                    else:
                        print("Sorry hashtag didn't match.Go further...")
            print("End of images...")
    else:
        print"Request failed."
예제 #3
0
def get_user_info(insta_username):

    user_id = get_user_id(insta_username)

    # If Nothing is received from server

    if user_id == None:
        print Fore.RED + "User does not exist!!"
        print(Style.RESET_ALL)
        exit()

    request_url = BASE_URL + "users/%s?access_token=%s" % (user_id,
                                                           APP_ACCESS_TOKEN)
    print "GET REQUESTED URL:%s" % (request_url)
    user_info = requests.get(request_url).json()

    if user_info['meta']['code'] == 200:
        if len(user_info['data']):
            print Fore.BLUE + Style.BRIGHT + "Username Is : %s" % (
                user_info['data']['username'])
            print "There are Total %s Followers for This User" % (
                user_info['data']['counts']['followed_by'])
            print "No. Of posts are %s" % (
                user_info['data']['counts']['media'])
            print "Follows:%s" % (user_info['data']['counts']['follows'])
            print(Style.RESET_ALL)
        else:
            print Fore.RED + Style.BRIGHT + "THERE IS NO DATA FOR THIS USER"
            print(Style.RESET_ALL)
    else:
        print "Status Code Other Than 200 Is Recieved"
예제 #4
0
def get_post_id(insta_username):

    sys.stdout.write(Fore.BLUE)

    user_id = get_user_id(insta_username)

    # If User Doesn't exists than server return none

    if user_id == None:
        print 'User does not exist!'
        exit()

    request_url = (BASE_URL + 'users/%s/media/recent/?access_token=%s') % (
        user_id, APP_ACCESS_TOKEN)

    print 'GET request url : %s' % (request_url)

    user_media = requests.get(request_url).json()

    if user_media['meta']['code'] == 200:
        if len(user_media['data']):
            return user_media['data'][0]['id']
        else:
            print 'There is no recent post of the user!'
            exit()
            print(Style.RESET_ALL)
    else:
        print 'Status code other than 200 received!'
        print(Style.RESET_ALL)
        exit()