Aen*_*Tan 22 ruby open-uri ruby-on-rails image
我正在使用imagesize gem来检查远程图像的大小,然后只将足够大的图像推送到数组中.
require 'open-uri'
require 'image_size'
data = Nokogiri::HTML(open(url))
images = []
forcenocache = Time.now.to_i # No cache because jquery load event doesn't fire for cached images
data.css("img").each do |image|
image_path = URI.join(site, URI.encode(image[:src]))
open(image_path, "rb") do |fh|
image_size = ImageSize.new(fh.read).get_size()
unless image_size[0] < 200 || image_size[1] < 100
image_element = "<img src=\"#{image_path}?#{forcenocache}\">"
images.push(image_element)
end
end
end
Run Code Online (Sandbox Code Playgroud)
我尝试在前端使用JS来检查图像尺寸,但似乎浏览器限制一次可以加载多少图像.
使用imagesize执行它比使用JS慢得多.有没有更好更快的方法呢?
Sni*_*per 47
我认为这个宝石做你想要的https://github.com/sdsykes/fastimage
FastImage通过尽可能少的提取来查找给定其uri的图像的大小或类型
| 归档时间: |
|
| 查看次数: |
9566 次 |
| 最近记录: |