我想知道是否有任何方法可以检查用户验证徽章与Instagram API?
我看到https://api.instagram.com/v1/users/ {user-id}在用户验证后没有返回,但如果您查看用户页面的源代码,则可以看到它有一个调用isVerified键的布尔值,它在用户的json结构中的值.
谢谢!
好吧,这不是一个很好的答案,但这是我完成同样任务的方式.从API获得用户名后,我会在其个人资料页面的源代码中执行以下正则表达式:
$response = file_get_contents('https://instagram.com/'.$username);
if (preg_match('/"user":\{"username":"'.$username.'",.*?"isVerified":true\},"__path":".*?'.$username.'.*?"/s', $response) || preg_match('/<meta content=".*?official.*?account.*?" name="description" \/>/is', $response)) {
print "VERIFIED USER!";
}
Run Code Online (Sandbox Code Playgroud)
正如我之前所说,这是超级hacky,但API目前不提供isVerified值.直到他们这样做我才使用这个正则表达式.它查找"isVerified":您引用的JSON结构的真实部分.(例如:https://instagram.com/taylorswift)
我们还添加了一个额外的检查,如果元内容标签中有"官方帐户",那么我们假设它是官方的.(例如:https://instagram.com/3doorsdown)我们添加了这张支票,因为Instagram在2014年开始使用经过验证的帐户,而且还有不少名人尚未获得经过验证的徽章.它应该拿起一些碎片,但也可能带来误报.
注意:如果Instagram在其页面上更改了JSON结构或元标记,则此解决方案将中断,因此使用风险自负.我们只需要一个脚本来检查验证徽章的少量用户名,我想出了这个真实的快速.最好的解决方案是每当他们更新API时.
归档时间: |
|
查看次数: |
2456 次 |
最近记录: |