2017-02-25 68 views
1

我使用Instagram的Get Recent Media终端从标签获取图像和视频。根据相关文档,这里是一个video媒体json样子(跳过简洁等领域):Instagram API:json响应中缺少的元素

{ 
    "type": "video", 
    "videos": { 
     "low_resolution": { 
      "url": "http://distilleryvesper9-13.ak.instagram.com/090d06dad9cd11e2aa0912313817975d_102.mp4", 
      "width": 480, 
      "height": 480 
     }, 
     "standard_resolution": { 
      "url": "http://distilleryvesper9-13.ak.instagram.com/090d06dad9cd11e2aa0912313817975d_101.mp4", 
      "width": 640, 
      "height": 640 
     } 
    } 
} 

因此,对于每一个媒体jsontype=video,应该有一个videos元素。然后我试图与quakeroats作为标签的请求,URL如下:

https://api.instagram.com/v1/tags/quakeroats/media/recent?access_token=<access_token> 

它返回的介质的列表下面的媒体之一:

{ 
    "id": "1457772143914843055_4607772970", 
    "type": "video", 
    "created_time": "1488000003", 
    "images": { 
     "thumbnail": { 
      "height": 150, 
      "width": 150, 
      "url": "https://scontent.cdninstagram.com/t51.2885-15/s150x150/e35/16788643_240567646348968_4950335324904488960_n.jpg" 
     }, 
     "low_resolution": { 
      "height": 320, 
      "width": 320, 
      "url": "https://scontent.cdninstagram.com/t51.2885-15/s320x320/e35/16788643_240567646348968_4950335324904488960_n.jpg" 
     }, 
     "standard_resolution": { 
      "height": 480, 
      "width": 480, 
      "url": "https://scontent.cdninstagram.com/t51.2885-15/e35/16788643_240567646348968_4950335324904488960_n.jpg" 
     } 
    }, 
    "user": { 
     "username": "aslapesetme.43kilo", 
     "full_name": "\u0130nan\u0131rsan Olur", 
     "id": "4607772970", 
     "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/16230854_382859295410786_1559541722264895488_a.jpg" 
    }, 
    "user_has_liked": false, 
    "link": "https://www.instagram.com/p/BQ7DAqRgPuv/", 
    "attribution": null, 
    "location": null, 
    "likes": { 
     "count": 22 
    }, 
    "comments": { 
     "count": 0 
    }, 
    "caption": { 
     "text": "\ud83d\udca08:00\ud83d\udca0 kahvalt\u0131:\n-50 gr. Yulaf\n-1 bardak s\u00fct\n-1 porsiyon meyve ve 1 \u00e7ay ka\u015f\u0131\u011f\u0131 kakao nibs\nNefiiss \ud83d\ude0b \u00e7ok \u015f\u00fck\u00fcr bizi doyuran rabbimize \ud83d\ude4f\ud83c\udffb Ayr\u0131ca frambuaz ve elman\u0131n sadece renk uyumu de\u011fil tat uyumu da m\u00fcthi\u015f deneyin \ud83d\udc7b\n#healtyfood#healthybreakfast#quakeroats#quakeroatmeal#quakerporridge#milk#apple#raspberries#framboise#ahududu#yulaflapasi#yulafezmesi#porridgelover#porridge#cacaonibs#diyet#diyetkardesligi#diyethesaplaritakiplesiyor#inan\u0131rsanolur#sadeceinan#eceilezayifliyorum#doganinguzelligi#dogalbeslen#kendinisev#benimkahvaltim#nofilter#greentea#whitetea#ginger#hediyenhayatinolsun", 
     "from": { 
      "username": "aslapesetme.43kilo", 
      "full_name": "\u0130nan\u0131rsan Olur", 
      "id": "4607772970", 
      "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/16230854_382859295410786_1559541722264895488_a.jpg" 
     }, 
     "created_time": "1488000003", 
     "id": "17849784529188561" 
    }, 
    "filter": "Normal" 
} 

它似乎有type设置为video,但是,没有videos元素。此外,媒体链接(https://www.instagram.com/p/BQ7DAqRgPuv/)似乎指向图像而不是视频。

看起来像是API错误或API响应格式的最近更改(仅在最近几天内我看到导入脚本中的错误)或两者。

有没有人注意到了这一点?另外,这是我应该提交给Instagram的吗?

回答

0

我刚刚碰到这个,当时我正在尝试更新一些代码以使用他们的新的多图像(或视频)功能。 Instagram现在允许您将多个图像作为单个帖子上传,然后您可以在用户界面中在它们之间进行滑动。看起来这在API中并没有真正考虑到,所以多项目帖子返回为type=video(如果它们应该是type=image,如果它们都是图像,或者可能是type=multi或其他新的)。

我的使用案例更烦人的是,他们也没有包含单个帖子中包含的每个不同媒体项目所需的数据,所以我无法完全重新创建多项目帖子,因为我不知道除了“甲板”中的第一张图像之外,什么都不知道。

1

目前在API中如果type="video"没有“视频”键意味着它是多图像文章。

(貌似是一个bug和Instagram可能最终会改变它)