Product
모델에서 다음 코드를 사용하여 og:image
개의 소매 사이트를 읽고 저장합니다.형식이 잘못된 오픈 그래프 URL을 읽는 방법
def photo_from_url(url)
if !Nokogiri::HTML(open(url)).css("meta[property='og:image']").blank?
photo_url = Nokogiri::HTML(open(url)).css("meta[property='og:image']").first.attributes["content"]
self.photo = URI.parse(photo_url)
self.save
end
end
이 대부분의 페이지에서 작동하지만, bad URI(is not URI?)
이러한 링크의 예를 반환 일부 og:image
의가 H & M의 소매 사이트에 다음 링크 형식입니다.
http://lp.hm.com/hmprod?set=source[/model/2012/K71 05701 95313 06 0043 0.jpg],rotate[],width[],height[],x[],y[],type[STILL_LIFE_FRONT]&call=url[file:/product/facebook]
분명히, 이것은 꽤 연결되지 않습니다 (심지어 StackOverflow의의 마크 다운 파서는 ... 링크하다고 말할 수 없다)하지만, 브라우저에 직접 붙여 넣을 때 실제로 작동 않습니다.
이렇게 링크를 올바르게 읽으려면 어떻게해야합니까?
_ _ "내가 제대로이 같은 링크를 읽기 위해 할 수있는 일?"- 내부에 허용되지 않는 문자에 적절한 URL 인코딩을 적용 URL ...? – CBroe