2017-02-21 2 views
0

La plupart des sites de médias sociaux disposent d'une fonctionnalité permettant de saisir un lien et le site génère un aperçu de lien. Voir l'exemple ci-dessous de Google+Récupération des métadonnées d'URL à partir de JS

Disons que j'aimerais construire le mien. J'utilise Ruby on Rails en tant que framework web, mais ce n'est pas pertinent car j'imagine que je vais devoir utiliser JS pour récupérer ce côté client, n'est-ce pas?

  1. Où puis-je rechercher ces données? Je sais que c'est généralement dans les étiquettes <meta>, mais est-ce standard? Quand je l'ai essayé pour quelques liens seulement la description était dans les étiquettes <meta>. L'image et le titre ne correspondaient à rien d'autre dans les balises META.

  2. Comment effectuer une extraction asynchrone d'un document distant et analyser ses balises? Si quelqu'un pouvait me montrer un exemple, je serais reconnaissant.

Merci!

enter image description here

+0

Je n'ai jamais essayé de faire ce truc en particulier, mais voici un point dans la bonne direction: les docs de Twitter sur ce type de métadonnées. https://dev.twitter.com/cards/getting-started – JSilv

+0

Vous pouvez analyser les méta-tags ouverts en utilisant cette gemme par exemple https://github.com/huyha85/opengraph_parser (il y en a beaucoup d'autres) –

+0

@AleksanderLopez - merci vous pour recommander OpenGraph Parser! C'est simple et facile à utiliser :) – user2490003

Répondre

1

Il y a trois façons de la façon dont les auteurs pourraient fournir ces données dans les documents HTML (du moins expressif au plus expressif):

  1. métadonnées dans l'élément head: C'est clair HTML, c.-à-d.

  2. microformats: Toujours en utilisant HTML brut, mais avec class spécifiques noms. Tous les microformats sont décrits dans their wiki.

  3. données structurées: utilisant extension/syntaxes supplémentaires (JSON-LD, Microdata, RDFa, ...) et vocabulaires (Schema.org, Open Graph Protocol, Dublin Core ...).

Vous trouverez généralement des analyseurs appropriés dans vos langages de programmation.

Vous trouverez probablement que la plupart des sites utilisent le protocole Open Graph (en format RDFa), car celui-ci est utilisé par Facebook et Twitter. Probablement suivi par Schema.org (en JSON-LD/Microdata/RDFa), car il est sponsorisé par les principaux moteurs de recherche. Notez que 2. et 3. permettent également aux auteurs de fournir des données sur les entités décrites (ou pertinentes) sur la page, c.-à-d. Que toutes les données extraites ne sont pas adaptées aux aperçus de liens, vous devez donc tenir compte du contexte .