Instagram机器人检测

时间:2021-03-28 14:23:23

标签: firebase google-cloud-functions instagram instagram-api

我正在尝试构建一个站点,让您可以检查要使用的用户名是否在各种平台上可用。 (https://namecheck.dev) 该网站是使用 Firebase 托管和 Firebase 云功能部署的。

对于 Instagram,我发现如果您向 https://www.instagram.com/{username}/ 发送 GET 请求,如果用户名尚未使用,则响应状态代码将为 404,如果已使用,则为 200。这种方法速度很快,不需要 API 密钥,而且效果很好。当我在本地机器上使用 Firebase 模拟器对此进行测试时,一切正常。

问题似乎是,一旦我将其部署到云功能,来自 Instagram 服务器的响应就变成了对登录页面的重定向。而且由于使用的用户名和可用的用户名都发生了同样的事情,我无法再区分它们了。我试图让请求不遵循重定向,但是我看到的只是这两种情况下的 302 重定向响应,仍然无法分辨哪个是哪个。

我怀疑 Instagram 正试图清除那些抓取其网站的机器人,而且不知何故,云功能环境比我的本地环境更像机器人。有什么办法可以解决这个问题吗?

我尝试查看官方 Instagram API,但他们只有一个端点,用于通过 ID 获取用户信息,而不是通过用户名。 (https://developers.facebook.com/docs/instagram-basic-display-api/reference/user) 是我弄错了,还是无法检查用户名是否是通过他们的 API 获取的?

0 个答案:

没有答案