Как получить мета-свойства (изображения, видео, заголовки ...) из ссылок, как это делает Facebook? - PullRequest
2 голосов
/ 09 сентября 2011

Я пытаюсь добавить функциональность для веб-приложения, где, когда пользователи публикуют ссылки, URL-адрес изображения заголовка каким-то образом выбирается, чтобы его можно было отобразить в моем веб-приложении.

Facebook уже делает это; когда вы делитесь ссылкой, она извлекает эту информацию и отображает заголовок, объявление, картинку и т. д.

Я знаю, что он идентифицирует соответствующие данные как таковые:

 <meta name="title" content="title" />
 <meta name="description" content="description " />
 <link rel="image_src" href="thumbnail_image" />

Но как я мог получить эти строки?

Я программирую на Ruby on Rails, так что ответ, совместимый с этим, или, возможно, использующий javascript, будет наиболее полезным!

Ответы [ 3 ]

2 голосов
/ 09 сентября 2011

Существует драгоценный камень, который оборачивает OpenGraph, который использует Facebook. Кажется, он простоял год или около того.

https://github.com/intridea/opengraph

0 голосов
/ 04 марта 2012

Это может быть немного поздно, но я бы посоветовал взглянуть на камень под названием nokogiri, он позволит вам очищать данные с других веб-страниц с помощью селекторов css или xpath. Если вы хотите посмотреть, что он может сделать, есть сопровождающий Railscast об этом. http://railscasts.com/episodes/190-screen-scraping-with-nokogiri

0 голосов
/ 04 марта 2012

Это называется очисткой ссылок. Вам нужно будет использовать как js на стороне клиента, так и ruby ​​на стороне сервера.

Процесс выглядит так:

  1. Ваш клиент вызывает функцию скребка на вашем сервере через ajax
  2. Функция Scraper извлекает URL и проверяет соответствующие мета
...