web-dev-qa-db-fra.com

Obtention de données reddit

Je souhaite obtenir des données de différents sous-reddit reddit. Est-ce que quelqu'un sait s'il existe une API reddit/autre similaire à celle de Twitter pour explorer toutes les pages?

24
Budhapest

Oui, reddit possède une API qui peut être utilisée à diverses fins telles que la collecte de données, les robots de commentaires automatiques, ou même pour aider à la modération des sous-titres.

Il y a quelques endroits pour découvrir des informations sur l'API de reddit:

  • github reddit wiki - fournit la vue d'ensemble et les règles d'utilisation de l'API de reddit (suivez les règles)
  • documents API générés automatiquement - fournit des informations sur les demandes nécessaires pour accéder à la plupart des points de terminaison API
  • / r/redditdev - la communauté reddit dédiée à répondre aux questions à la fois sur le code source de reddit et sur l'API de reddit

S'il existe un langage de programmation particulier que vous connaissez déjà, vous devriez consulter le ensemble existant de wrappers API pour différents langages. Malgré mon parti pris (je suis le mainteneur du paquet), je suis tout à fait certain PRAW , pour python, prend en charge le plus grand nombre de fonctionnalités de l'API reddit.

33
bboe

Notez que si vous ne lisez que des données et que vous n'êtes pas intéressé à publier sur reddit, vous pouvez obtenir pas mal de données à partir des flux json associés à chaque subreddit. Avec cette méthode, vous n'avez pas du tout à vous soucier d'une API - il vous suffit de demander le fichier json correspondant et de l'analyser dans la langue de votre choix.

Voici un exemple d'URL qui renverra un objet json contenant les messages chauds du sous-programme Justrolledintotheshop: https://www.reddit.com/r/Justrolledintotheshop/top.json

À la place de top, vous pouvez utiliser hot, new ou controversial. Lorsque vous utilisez top, vous pouvez ajouter ?t=day à la fin de l'URL pour spécifier le premier message de la journée. Les autres valeurs valides sont hour, day, week, month, year ou all.

13
Haydentech

Pour analyser les données JSON de reddit avec ajax/javascript .

Reddit a [~ # ~] cors [~ # ~] activé pour les requêtes GET.

Ici à titre d'exemple, analysez les dernières vidéos de reddit au format JSON:

xhr = new XMLHttpRequest
xhr.open("GET","https://www.reddit.com/r/videos/.json",true)
xhr.send(null)
xhr.onreadystatechange = function() {
  if(this.status === 200) {
    console.log(JSON.parse(xhr.responseText))
  }
}

https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest

Pour aller plus loin, consultez cette question:

Changer l'ID de la vidéo youtube sans recharger la page

1
NVRM