2016-04-20 3 views
1

Моя задача - не создавать какое-либо приложение или веб-сайт, а просто написать сценарий PYTHON, который дает имена пользователей в качестве ввода и извлекает идентификатор пользователя в результате.Есть ли способ получить Instagram User _ID без использования API-схемы instagram?

Как instagram запрашивает имя приложения, веб-сайт, URI и все остальное, чтобы иметь возможность получать идентификатор клиента и другие вещи, чтобы иметь возможность использовать их API, и у меня нет приложения как такового, t претендовать на это. Так можно ли это сделать без API Instagram?

Если нет другого способа, как работать на него?

Также я новичок в программировании на питоне и подключении к API и всем. Было бы очень полезно, если бы кто-то помог мне с кодом для этого.

Спасибо!

+2

Лучше всего придерживаться официального API, если таковой имеется. Вы должны иметь возможность зарегистрироваться для API без веб-сайта. – Selcuk

+0

Спасибо за ответ @Selcuk. Но я проверил и попросил все это. Поскольку я новичок в Python с использованием концепции API, я не знаю, как написать код для него. Пожалуйста, помогите, как это сделать. –

+0

Вы можете очистить экран, но вы быстро получите запрет. Я предлагаю вам зарегистрироваться с помощью заполнителей, а затем Google для библиотеки API-интерфейса Python. – Selcuk

ответ

1

Ну, ответ на вопрос: мы можем использовать сам Instagram API. Как сказал @Selcuk, мы можем зарегистрироваться с использованием заполнителей на сайте Instagram. Итак, мы получим client_id и client_secret, а также, если мы зарегистрированы пользователем instagram, мы также получим токен доступа.

Токен доступа, если его трудно найти, может быть достигнуто путем перехода на https://apigee.com/console/instagram , а затем в опции проверки подлинности сверху выберите OAuth, который приведет вас на страницу входа в систему instagram. После отправки запроса он покажет вам, какой запрос вы сделали, и также можете найти токен доступа.

В консоли питона просто введите: -

import urllib.request 
import urllib.parse 
from instagram.client import InstagramAPI 
access_token="YOUR ACCESS TOKEN&q" 
api=InstagramAPI(client_id= 'YOUR CLIENT ID', client_secret='YOUR CLIENT SECRET') 
scope='public_content' 
url='https://api.instagram.com/v1/users/search?q=USERNAME TO SEARCH&access_token=YOUR ACCESS TOKEN' 
a=urllib.request.urlopen(url) 
print(a.read()) 

Это даст вам подробную информацию о пользователе.

1

Я установил этот код ниже (python 3.5.2), используя только urllib, и он работает как сон!

from six.moves.urllib.request import urlopen 

def is_number(s): 
    try: 
     float(s) 
     return True 
    except ValueError: 
     return False 
id_loop = True 
while id_loop == True: 
    username = input('Please enter the Instagram username that you would like to find the User ID for: ') 

    link = 'http://www.instagram.com/' + username 
    response = urlopen(link) 
    content = str(response.read()); 

    start_index = (content.index('"owner": {"id": "')) + len('"owner": {"id": "') 

    test_string = '' 

    for collect in range(14): 
     test_string = test_string + content[start_index] 
     start_index = start_index + 1 

    edit_string = '' 

    for char in test_string: 
     if is_number(char) == True: 
      edit_string = edit_string + char 
     else: 
      edit_string = edit_string + '' 

    print(username + "'s Instagram ID = " + edit_string) 

Как вы можете видеть, единственным модулем, который вам нужен, является urllib. Этот код по существу находит страницу Instagram для имени пользователя, которую вы вводите, и устанавливает переменную content равной одной строке, состоящей из всего HTML-кода веб-страницы. Затем эту строку выискивает код, чтобы найти идентификатор Instagram. Надеюсь это поможет!

Смежные вопросы