1

페이스 북과 비슷한 기능을 구현하려고합니다. 사용자가 링크를 게시하면 페이스 북은 링크 된 웹 사이트를 크롤링하고 가장 관련성 높은 (큰) 이미지를 가져옵니다. 나는 여기와 Quora에서 몇 가지 해결책을 읽었지 만, 주로 PHP를 사용하고 있으며 상세한 솔루션을 제공하지는 않습니다. 하나의 대답은 내가 국가에게 다음 사항을 찾았지만 레일에서 초보자로서, 나는이 작업을 수행 할 것입니다 방법을 완전히 확실하지 않다 :레일 : 주어진 링크에서 미리보기 이미지를 자동으로 생성하는 보석?

1.You는 단순히 CURL 요청

2.Get을 할 수있는 모든 이미지 HTML 파싱으로

3. 페이스 북 등으로 사용자가 선택한 것을 표시하거나 첫 번째 (기본) 이미지를 표시하십시오.

이것을 달성하기 위해 사용할 수있는 보석이 있습니까? 나는 또한 사용자가 가장 관련성이 높은 사진을 선택할 수 있도록 자바 스크립트가 필요하다고 생각하지만, 그게 최우선 순위는 아니다. 링크에서 사진을 찾아서 Amazon 서버에 업로드하고 싶습니다. 우리는 현재 Carrierwave를 사용하여이를 수행하고 있습니다.

답변

2

일부 크롤러의 경우 Ruby Toolbox을 살펴볼 수 있지만 전적으로 사용자의 요구에 맞을 것으로 생각하지 않습니다.

아마 내 자신의 특정 솔루션과 함께 할 것입니다 .. 그래서, httparty 또는 RestClient와 웹 사이트를 잡고, 응답을 분석하고 Nokogiri와 이미지를 보일 것이다. 선택의 논리는 당신에게 달렸습니다.

사용자가 실제로 링크를 게시 할 때 한 가지 일을하고 싶지는 않지만, 사용자 인터페이스를 차단하지 않도록 백그라운드에서이 작업을 수행해야합니다. 상처는 Sidekiq과 같은 것이 좋습니다. 이 스크린 캐스트 #366 Sidekiq을 살펴보십시오.

+0

감사합니다. 나는이 모든 것을 볼 것입니다! – kibaekr

1

HTTParty와 Nokogiri를 사용하여 페이지의 메타 데이터를 가져옵니다. 대부분의 페이지는 요즘에는 좋은 미리보기 이미지를 만드는 데 사용할 수있는 이미지/제목/설명이 포함 된 요즘의 페이스 북 오픈 그래프 태그를 사용합니다.

FB 오픈 그래프 태그를 잡는 데 좋은 게시물이 여기에 있습니다 : How to parse og meta tags using httparty for rails 3.

https://github.com/rlarcombe/grabbit

나는이 도움이 되었으면 좋겠 :

2

난 그냥 당신이 필요로 정확히 수행하는 보석을 발표했다!

+0

감사! 나는 그것을 조사 할 것이다! – kibaekr

+1

또 하나 (최근 업데이트) : https://github.com/gottfrois/link_thumbnailer – michelpm

관련 문제