我一直在尝试检测Instagram图片是否已被移除以隐藏我的数据库中的这些照片。
现在我正在存储Instagram图像短代码。并使用"https://instagram.com/p/#{shortcode}"
如果您使用(Ruby)访问例如合法网址:
open "https://instagram.com/p/1"
然后返回200 OK,
另一方面,随机不存在的页面抛出异常404。
但有时它似乎在合法页面上抛出404,这就是为什么我的代码会执行它不应该对它们执行的操作。
begin
link = "https://instagram.com/p/#{submission.image}"
submission.visible = true
open link, :allow_redirections => :all
rescue OpenURI::HTTPError => e
if e.message.include? '404 NOT FOUND'
submission.visible = false
end
end
你有什么想法吗?
答案 0 :(得分:0)
您可能需要使用API。如果有帮助,请查看Instagram API的媒体端点:
答案 1 :(得分:0)
在这种情况下,我使用的是您使用的相同方法。唯一区别我正在使用 HTTParty gem。
def image_from_instagram
response = HTTParty.get(image_url)
response.ok? && response.body
end
所以基本上我检查的是image_from_instagram
在某些时间段出现,这只是工作正常。并且没有404或任何其他特殊情况。