ins帖子数结构梳理

关于抽取帖子中的图片

一、数据接口
    1. 接口1

GET请求
该接口不明确 该接口参数好像不会失效;但是还是会校验登录态。
数据包只有一个key
data:user:edge_owner_to_timeline_media
数据样例
2022年10月8日后发现该接口消失了,有可能更新了
本以为这个接口消失了,结果10月9号又冒出来了,很奇怪,有时候有,有时候没有

https://www.instagram.com/natiribeiromg/

然后换了UA,接口又没了,又变成了这个
目前猜测用哪个接口可能和UA有关系

再次切到iPhoneSE
结果却又不是1号接口,变成了二号接口了

刚刚还是1号接口的,又变了,又变成了2号接口;
只剩下一种可能性了,就是和登录态有关系,半登录态或者登录的账号会决定用1号接口

    1. 接口2

其中参数max_id前半部分应该是帖子ID,后半部分是userID
数据样例
2022年10月8日 发现手机UA和PC的UA都是该接口返回数据
支持修改count值

    1. 接口3

该接口首次请求:https://i.instagram.com/api/v1/feed/user/selenagomez/username/?count=12
该接口其实是接口2的首次请求,后面翻页就是接口2了
支持修改count值,但是最多只返回33条数据

二、数据抽取

这边调用了第一个数据接口

    1. 部分是视频,帖子会有一个字段is_video用以区分,如果是视频那么是不存在图片列表的,也就是不存在这个key edge_sidecar_to_children;但是该帖子还是有图片的,就是一张视频的封面图,在字段display_url
    1. 部分帖子只有一张图片,部分有多张图片;如果只有一张,那么就不存在edge_sidecar_to_children这个字段,这张图片在字段display_url中;如果存在多张图片那边便存在字段edge_sidecar_to_children;此时的取值方式见下面代码:
                edge_sidecar_to_children = data['edge_sidecar_to_children']
                urls_info = edge_sidecar_to_children['edges']
                for url_info in urls_info:
                    url = url_info['node']['display_url']
长这样,三层结构

你可能感兴趣的:(ins帖子数结构梳理)