gpt4 book ai didi

api - Instagram ?__a=1&max_id= 不适用于公共(public)用户提要

转载 作者:行者123 更新时间:2023-12-04 05:45:49 24 4
gpt4 key购买 nike

我一直在使用 Instagram 的无证 API https://www.instagram.com/<user>/?__a=1获取公共(public)用户供稿。

我还能够通过他们的 max_id 获得多个页面查询参数如下:https://www.instagram.com/<user>/?__a=1&max_id=<end_cursor>

end_cursor = json_response.graphql.user.edge_owner_to_timeline_media.page_info.end_cursor

(是的,“has_next_page”是真的)

他们最近对 JSON 格式进行了更改,我认为他们可能破坏了其他功能。

“end_cursor”仍然存在,但是当我使用它时,我只会返回相同的 Instagram 帖子,就好像我没有使用它一样。

只是为了确保我清楚,我的问题是 max_id=<end_cursor>似乎不再适用于公共(public)用户提要。我仍然可以得到前 12 个帖子,但之后就不行了。

还有其他人看到这个问题吗?

这是我的意思的 JSFiddle 示例:
https://jsfiddle.net/LLsg91ja/33/

最佳答案

2018 年 4 月 14 日 - 不再工作 - INSTAGRAM 弃用了 '?__a=1' 和 '?query_id=17888483320059182' - 这不再有效!

好的,看看这个媒体分页:
https://instagram.com/graphql/query/?query_id=17888483320059182&id=<user_id>&first=12&after=<end_cursor>
这将返回:

['data']['user']['edge_owner_to_timeline_media']['page_info']['end_cursor']

和媒体:

['data']['user']['edge_owner_to_timeline_media']['edges']

'query_id' 现在是静态的,所以只需使用:17888483320059182

'id' 是“instagram 用户 id”,所以你必须使用 ?__a=1抢 ['graphql']['user']['id']

'first' 是您希望返回的照片数量。只需使用 12 来保持媒体返回相同。

'after' 是新的 'max_id' 供使用 ['data']['user']['edge_owner_to_timeline_media']['page_info']['end_cursor']

我会测试更多,稍后再回复。

稍后回复:

据信使用 ?__a=1 进行“分页”已被弃用。如果为真,则没有答案可以使用 ?__a=1 解决运算符(operator)的直接问题。用于 Instagram 分页。

但是此答案中提供的代码将提供 Instagram 媒体的分页,该分页确实提供了操作所寻求的结果。

答案包含“instagram graphql api”,它是当前的 api(而不是 json ?__a=1 hack),所以这个答案现在应该提供一些稳定性。

正如在我的现场网站上使用的那样:

捕获id=<instagram_user_id>在 Instagram 媒体请求之前:
profile = https://www.instagram.com/<instagram_username>/?__a=1media = https://instagram.com/graphql/query/?query_id=17888483320059182&id=<profile['graphql']['user']['id']>&first=12&after=<end_cursor>

关于api - Instagram ?__a=1&max_id=<end_cursor> 不适用于公共(public)用户提要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49265013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com