2013-10-11 1 views
7

Я делаю приложение, которое извлекает твиты в Twitter пользователя.Как получить атрибуты og/meta ресурса?

Эти каналы содержат ссылки на внешние ресурсы, такие как Artciles, Webpage или видео на YouTube.

Я получаю Javascript API JSON из этих каналов, но там arent включал атрибуты контента og:. И я хотел бы поймать их и показать на моем сайте.

Такие, как this вопрос StackOverflow:

<meta name="og:type" content="website" /> 
<meta name="og:image" content="http://cdn.sstatic.net/stackoverflow/img/[email protected]?v=fde65a5a78c6"/> 
<meta name="og:title" content="How can I check classes that ends with?" /> 
<meta name="og:description" content="I have some elements such as: 
    &amp;lt;div class=&quot;button 17-facebook-dashboard-check&quot;&amp;gt;Elem1&amp;lt;div&amp;gt; 
    &amp;lt;div class=&quot;button 18-google-dashboard-check&quot;&amp;gt;Elem2&amp;lt;div&amp;gt; 
    &amp;lt;div class=&quot;button " /> 
<meta name="og:url" content="https://stackoverflow.com/questions/19001883/how-can-i-check-classes-that-ends-with"/> 

Я хотел бы, чтобы поймать эту информацию для каждого общего ресурса на каждом твите. Итак, я думаю, что для каждого твита (который для меня есть ящик) выполните клиентскую заявку ajax, загрузите html и проанализируйте его, извлекая og:title, og:description, og:type и og:image.

Это лучший подход? Что нужно проанализировать эти данные в Javascript/JQuery?

ответ

6

Этих og: атрибутов Open Graph Protocol атрибутов, есть много способов, чтобы получить эти ДАННЫЕ: вы должны проверить коды Open Graph Protocol parser, которые могут быть очень полезными для вас, и это PHP and jQuery Facebook link parser.

Вы также можете проверить это StackOverflow Question о разборе PHP и этом Opengraph PHP parser и динамически использовать их с помощью вызовов ajax.

И, наконец, этот StackOverflow question о JQuery и чистом анализе JavaScript очень интересен и может действительно помочь вам.

Надеюсь, вы найдете то, что вам нужно! ;)

0

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: OpenGraph.io - это коммерческий продукт, над которым я работаю и поддерживаю.

Как вы уже упоминали, часто нет тегов OG для работы. Существуют всевозможные сценарии, которые вы можете встретить (например, кодирование, неправильное использование тегов HTML и т. Д.). Если вы хотите обработать краевые кейсы, я бы рекомендовал http://www.opengraph.io/

Одним из основных преимуществ является то, что он будет выводить информацию, такую ​​как название или описание (если вам это нужно) из содержимого на странице, если теги OpenGraph не существует.

Чтобы получить информацию об использовании сайта (ссылка должна быть URL закодирован):

$.ajax('http://opengraph.io/api/1.0/site/http%3A%2F%2Fwww.washingtontimes.com%2F') 
    .done(function(data){ 
    console.log(data); 
    }); 

который будет возвращать что-то вроде:

{ 
    "hybridGraph": { 
    "title": "Washington Times - Politics, Breaking News, US and World News", 
    "description": "The Washington Times delivers breaking news and commentary on the issues that affect the future of our nation.", 
    "image": "http://twt-assets.washtimes.com/v4/images/logo-twt.4b20fb5d7b29.svg", 
    "url": "http://www.washingtontimes.com/", 
    "type": "site", 
    "site_name": "Washington Times " 
    }, 
    "openGraph": {...}, 
    "htmlInferred": {...}, 
    "requestInfo": {...} 
} 
+1

App кажется, вниз, возможно, были удалены –

+0

It возможно, было немного сокращено, но, как правило, довольно надежным. Какую проблему вы видели? – 1kmonkies

+1

Я имел в виду, что http://www.opengraph.io/ недоступен. Не знаю, работает ли приложение или было перемещено. –