Instagram API 使用 Python
Instagram API using Python
我目前正在使用 Python 的 python-instagram
库在沙盒模式下使用 Instagram API。现在,我有一个应用程序及其关联的客户端 ID、客户端密码和访问令牌,以及一个已连接的沙箱用户。
今天早些时候,我正在试验 users/search
端点。首先,我直接使用他们的端点 URL 发送请求:
https://api.instagram.com/v1/users/search?q=XXXX&access_token=<my_access_token>
其中 XXXX
是我的 Instagram 应用程序的已连接沙箱用户。这是生成的响应:
{"meta":{"code":200},"data":[{"username":"XXXX","bio":"Twitter: @XXXX","website":"","profile_picture":"https:a.jpg","full_name":"XXXX XXXX","id":"22222222"}]}
现在,我尝试使用 python-instagram
库将请求发送到相同的端点,如下所示:
from instagram.client import InstagramAPI
access_token = <my_access_token>
api = InstagramAPI(client_secret='aaaa', access_token = access_token[0])
usr = api.user_search('XXXX')
print usr
但是,这是我在这种情况下得到的响应:
[User: XXXX]
为什么当我尝试使用直接 URL 和 Python 库调用同一个端点时得到不同的响应?
python-instagram
所做的是,它将获取您在发出 HTTP 请求时收到的原始 JSON 响应,并将其映射到 python 个对象。
当您发出 print usr
时,您正在打印列表中的 User
对象,因此您看到的字符串是 [User: XXXX]
.
您可以找到他们用于用户对象的模型 here。它实际上直接映射Json中的字段以获取属性。
尝试使用以下代码检索用户名和 ID:
my_usr = usr[0]
print 'User id is', my_usr.id, 'and name is ', my_usr.username
我目前正在使用 Python 的 python-instagram
库在沙盒模式下使用 Instagram API。现在,我有一个应用程序及其关联的客户端 ID、客户端密码和访问令牌,以及一个已连接的沙箱用户。
今天早些时候,我正在试验 users/search
端点。首先,我直接使用他们的端点 URL 发送请求:
https://api.instagram.com/v1/users/search?q=XXXX&access_token=<my_access_token>
其中 XXXX
是我的 Instagram 应用程序的已连接沙箱用户。这是生成的响应:
{"meta":{"code":200},"data":[{"username":"XXXX","bio":"Twitter: @XXXX","website":"","profile_picture":"https:a.jpg","full_name":"XXXX XXXX","id":"22222222"}]}
现在,我尝试使用 python-instagram
库将请求发送到相同的端点,如下所示:
from instagram.client import InstagramAPI
access_token = <my_access_token>
api = InstagramAPI(client_secret='aaaa', access_token = access_token[0])
usr = api.user_search('XXXX')
print usr
但是,这是我在这种情况下得到的响应:
[User: XXXX]
为什么当我尝试使用直接 URL 和 Python 库调用同一个端点时得到不同的响应?
python-instagram
所做的是,它将获取您在发出 HTTP 请求时收到的原始 JSON 响应,并将其映射到 python 个对象。
当您发出 print usr
时,您正在打印列表中的 User
对象,因此您看到的字符串是 [User: XXXX]
.
您可以找到他们用于用户对象的模型 here。它实际上直接映射Json中的字段以获取属性。
尝试使用以下代码检索用户名和 ID:
my_usr = usr[0]
print 'User id is', my_usr.id, 'and name is ', my_usr.username