有很多网站可以从Instagram个人资料中获取所有关注者的列表。 例如Jennifer Lopez 的个人资料。如果我点击关注者并向下滚动孔列表,我仅查看约1000个用户。有没有办法获得所有关注者列表,或者介于1万到10万用户之间的内容?其他人如何做到这一点?
以下几页似乎有效:
如果你能帮助我,我将非常感激!
答案 0 :(得分:3)
我相信您看到的大部分页面都使用Instagram API(或下面描述的方法)。但是,如果没有他们满意的应用程序,那就很难获得访问权限。据我了解,你必须先知道你是否有访问权限,这有点愚蠢。我猜他们试图阻止新用户使用它,同时他们继续让已经使用它的人继续使用它。
他们的API的文档似乎缺少很多早期可用的文档,而且现在没有端点可以获取关注者(这可能是文档页面暂时出错的地方:https://www.instagram.com/developer/endpoints/)。< / p>
你可以像Instagram网页一样使用粉丝。但是,如果您一次请求最多约5000-6000个关注者,似乎只会有效,并且您可能会受到限制。
他们向https://www.instagram.com/graphql/query/
发出GET请求,其中包含查询参数query_hash
和variables
。
我猜query_hash
是变量的哈希值。但是,我可能错了,因为即使你改变变量它也会继续工作。相同的哈希可能不会永远有效,所以它可能你必须得到Instagram页面的相同方式。即使你没有登录,你也会得到,所以我认为这不会很难。
variables参数是一个包含搜索变量的URL编码JSON对象。 JSON应如下所示:
{
"id":"305701719",
"first":20
}
id
是用户的ID。 first
是您想要的关注者数量。
这将返回一个像这样的json对象:
"data": {
"user": {
"edge_followed_by": {
"count": 73785285,
"page_info": {
"has_next_page": true,
"end_cursor": "AQDJzGlG3jGfM6KGYF7oOhlMqDm9_-db8DW_8gKYTeKO5eIca7cRqL1ODK1SsMA33BYBbAZz3BdC3ImMT79a1YytB1j9z7f-ZaTIkQKEoBGepA"
},
"edges": [
{
"node": {}
}
]
}
}
}
edges
数组将包含一个节点元素列表,其中包含关于您搜索人员的人员的用户信息。
要获得下一个x个关注者,你必须将变量查询中使用的json更改为:
{
"id":"305701719",
"first":10,
"after":"AQDJzGlG3jGfM6KGYF7oOhlMqDm9_-db8DW_8gKYTeKO5eIca7cRqL1ODK1SsMA33BYBbAZz3BdC3ImMT79a1YytB1j9z7f-ZaTIkQKEoBGepA"
}
after
将是您在之前的请求中以end_cursor
收到的内容。
通过这种方式,您可以继续循环,直到响应中的has_next_page
为false
。
答案 1 :(得分:1)
编辑23/08/2018
Instagram似乎已阻止任何滚动/查询哈希请求,以至少在台式机上甚至在您自己的帐户上,在帖子上获取关注者列表/喜欢者列表。
https://developers.facebook.com/blog/post/2018/01/30/instagram-graph-api-updates/
虽然仍然可以通过电话使用Appmium
:http://appium.io/
也许有些reverse app engineering
也可能是关键,如果那边有什么想法的话:
https://www.blackhatworld.com/seo/journey-instagram-app-reverse-engineer.971468/
编辑25/08/2018
它似乎又回来了...有关它的任何信息吗?