我正在尝试使用Instagram API为Instagram中的图像设置自定义宽度。我正在使用标签来抓取所有相关的图像。我可以让Instagram为我提供自定义图像大小吗?我知道有3种尺寸:缩略图,低分辨率,标准分辨率。这就是我能得到的吗?谢谢!
Instagram API返回三种标准图像分辨率。还有一个额外的未记录的图像大小,你也可以使用,但是,这可能在未来有点脆弱/容易改变,也可能违反他们的服务条款(不确定)。当我看到Instagram网站提供更高分辨率的图片时,我注意到这张照片是可用的——我不太确定为什么Instagram选择不提供这张照片。
从API中,您可以获得这些标准图像大小:缩略图(150 * 150)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e15/11821182_168255950173048_11130460_n.jpglow_resolution (320 x 320)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s320x320/e15/11821182_168255950173048_11130460_n.jpg标准分辨率(640 × 640)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s640x640/sh0.08/e35/11821182_168255950173048_11130460_n.jpg然后,通过查看他们的网站,我注意到他们提供了一个1080 x 1080的大版本文件:
未注明的大图(1080 * 1080)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s1080x1080/e15/11821182_168255950173048_11130460_n.jpg简单的做一个搜索并替换_5(或_6,即)得到你想要的大小(见下文):
图片大小如下:
http://distilleryimage7.s3.amazonaws.com/xxxxxxxxx_7.jpg
612px × 612px
http://distilleryimage7.s3.amazonaws.com/xxxxxxxxx_6.jpg
306px × 306px
http://distilleryimage7.s3.amazonaws.com/xxxxxxxxx_5.jpg
150px × 150px
Instagram使用Amazon S3保存照片,并有如下的命名约定:
http://distilleryimage7.s3.amazonaws.com/f4947c1004ca11e2a0c81231380ff428_7.jpg
http://distilleryimage7.s3.amazonaws.com/f4947c1004ca11e2a0c81231380ff428_6.jpg
http://distilleryimage7.s3.amazonaws.com/f4947c1004ca11e2a0c81231380ff428_5.jpg
通过简单地通过API获取照片URL,然后将图像URL中的_7,_6,_5更改为另一个值(通过搜索/替换),您可以控制图像的大小
正如之前的海报所描述的,Instagram没有办法提供你需要的精确大小的图片。它们只有三到四种默认大小可用。
你需要实现某种中间件来为你调整图像的大小,或者使用像https://tiny.pictures/这样的服务(免责声明:我是一个开发人员)来为你做这件事。
我知道这是一个旧的帖子,但我认为我应该补充说,有许多超过三(或四)图像大小可用。我写了一个简短的Python脚本,发现了以下内容:
12 90 200 376 719
16 96 203 390 720
24 100 206 403 750
30 111 224 405 768
32 112 240 408 800
34 114 243 417 810
40 118 256 468 936
43 120 262 479 959
48 128 270 480 960
50 129 279 512 1008
56 130 280 515 1024
57 133 285 540 1029
60 135 288 562 1056
64 147 306 564 1080
68 148 319 599 1225
73 150 320 600 1300
74 160 332 624 1440
75 180 338 640 1536
80 190 350 672 2048
86 192 360 704
据我所知,所有高于1080的值(1225、1300、1440、1536、2048)都返回1080。
我测试了一张正方形的照片,所以我不知道不同的长宽比会有什么效果。