我使用这个python library:
from instagram.client import InstagramAPI
access_token = "Access Token"
api = InstagramAPI(access_token=access_token)
user_info = api.user(user_id)
print user_info
我收不到这个答案:
{
"data": {
"id": "1574083",
"username": "snoopdogg",
"full_name": "Snoop Dogg",
"profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_1574083_75sq_1295469061.jpg",
"bio": "This is my bio",
"website": "http://snoopdogg.com",
"counts": {
"media": 1320,
"follows": 420,
"followed_by": 3410
}
}
我如何追溯生物,追随者数等信息?谢谢你
答案 0 :(得分:2)
您实际上正在接收整个响应,但Instagram API客户端的Python版本正在返回其User
类的实例(继承自ApiModel
类)。
您可以通过单独访问这些属性来获取所需的所有数据:
user = api.user('1574083')
print user.username
print user.full_name
print user.profile_picture
print user.bio
print user.website
print user.counts
打印哪些:
snoopdogg
snoopdogg
http://scontent.cdninstagram.com/hphotos-xap1/t51.2885-19/11186934_976841435684008_1692889037_a.jpg
Get BUSH now!
http://smarturl.it/BushAlbum
{u'media': 19019, u'followed_by': 6746636, u'follows': 1707}
这具有欺骗性,因为如果您只打印user
,则只会看到User: snoopdogg
。在Python中,它可以覆盖许多其他语言不允许的方法。具体来说,他们已经覆盖了__str__
,__repr__
和__unicode__
,它们都用于将对象转换为字符串类型的对象进行打印。
据我了解,__str__
和__unicode__
应该是“漂亮”版本,而__repr__
应该向您展示(如果可能)如何重建对象。他们在完成任一目标方面做得相当薄弱,但它可以说比对象的默认表示更好,就像<instagram.models.User object at 0xf8c5a750>
一样。