2010-08-04 5 views
2

S3에 이미 업로드 된 JPEG의 메타 데이터를 읽고 싶습니다. 로컬에서 파일을 다운로드하지 않고 Ruby에서 그렇게 할 수 있습니까?URL에서 이미지 메타 데이터를 읽는 방법?

내가 직면 한 문제는 Image (Mini) Magick이 URL을 소스로 사용하지 않는다는 것입니다 (또는 적어도 올바른 명령을 찾지 못했습니다).

업데이트 :

이이 작동 : URL에 대한,

>> image = MiniMagick::Image.from_file -path_to_file- 
>> image["EXIF:datetime"] 
=> "2010:07:19 23:07:54" 

하지만 "from_file"에 대한 좋은 substitude를 찾지 못했습니다 그래서 뭔가 같은 :

>> image = MiniMagick::Image.from_url http://image_adress.com/image.jpg 

작동하지 않습니다.

+0

시도해 보았던 것을 보여 줄 수 있습니까? – michaelmichael

+0

확실합니다. 업데이트되었습니다. –

답변

1

open-uri 사용은 어떻게됩니까?

require 'open-uri' 

image = nil 
open('http://image_adress.com/image.jpg') do |file| 
    image = MiniMagick::Image.from_blob(file.read) rescue nil 
end 
image["EXIF:datetime"] if image 
+0

감사합니다. 파일을 다운로드하지 않고 메타 데이터를 읽는 방법 (대역폭 저장)이 있습니까? –

+0

원격 위치에서 충분한 데이터를 점진적으로로드하고 MiniMagick이 모든 데이터를로드하지 않고도 필요한 것을 반환하는지 확인할 수 있습니다. 이미지 젬으로이 작업을 수행합니다. 성공할 때까지 한 번에 몇 KB 만 공급하거나 전체 파일을 읽었습니다. –

+0

고마워, 나는 그것을 밖으로 시도 할 것입니다. –

관련 문제