Obtenez Twitter Flux JSON sans authentification
J'ai écrit un petit JavaScript il y a quelques années qui a attrapé un des utilisateurs (le mien) le plus récent tweet et puis analysé pour l'affichage y compris des liens, la date, etc.
Il a utilisé cette json appeler pour récupérer les tweets et il ne fonctionne plus.
http://twitter.com/statuses/user_timeline/radfan.json
Il renvoie l'erreur:
{"errors":[{"message":"Sorry, that page does not exist","code":34}]}
J'ai regardé à l'aide de la version de l'api (code ci-dessous), mais cela nécessite une authentification je préfère éviter d'avoir à faire car il est juste à afficher mes derniers tweets sur mon site qui est public, de toute façon sur ma page de profil:
http://api.twitter.com/1/statuses/radfan.json
Je n'ai pas continué avec l'API Twitter changements que je n'ai plus vraiment de travailler avec elle, est-il un moyen de les contourner ce problème ou est-il plus possible?
- Ne peut pas faire ça. Voici comment le faire maintenant: stackoverflow.com/questions/17049821/...
- il est possible d'utiliser un json appeler pour récupérer les tweets. Je viens de poster une réponse à ce sujet
Vous devez vous connecter pour publier un commentaire.
Comme vous pouvez le voir dans la documentation, à l'aide de l'API REST, vous aurez besoin OAuth Jetons pour ce faire. Heureusement, nous pouvons utiliser la Recherche (ce qui ne veut pas utiliser OAuth) et l'utilisation de la
from:[USERNAME]
opérateurExemple:
http://search.twitter.com/search.json?q=from:marcofolio
Vous donnera un objet JSON avec les tweets de l'utilisateur, où
vous donnera le dernier tweet.http://search.twitter.com/search.json?q=
Précédemment la API de Recherche était la seule API Twitter qui n'a pas besoin d'une forme de OAuth. Maintenant, il ne nécessite auth.
Twitter API de Recherche est acquis auprès d'un tiers à l'acquisition qu'ils s'appuient rarement et sont apparemment unenthused qu'il existe même. En plus de cela, il existe de nombreuses limites à la charge utile, y compris, mais pas limité à une forte baisse de la série de clé:valeur paires dans le JSON ou XML fichier, vous obtenez en retour.
Quand j'ai entendu cela, j'ai été choqué. J'ai passé un LONG moment à essayer de comprendre comment utiliser le moins de code pour faire un simple OBTENIR demande (comme l'affichage d'un calendrier).
J'ai décidé d'aller le OAuth route pour être en mesure d'assurer une pertinente de la charge utile. Vous avez besoin d'un langage côté serveur pour ce faire. JavaScript est visible pour les utilisateurs finaux, et donc c'est une mauvaise idée d'inclure la nécessaire clés et secrets dans un .fichier js.
Je ne voulais pas utiliser une grande bibliothèque, donc la réponse pour moi était PHP et l'aide de @Rivières réponse ici. La réponse ci-dessous par @lackovic10 explique comment inclure les requêtes d'authentification.
J'espère que cela aide les autres à économiser du temps à réfléchir sur la façon d'aller sur l'utilisation de l'API Twitter avec le nouveau OAuth exigence.
Vous pouvez accéder et gratter Twitter via la recherche avancée sans être connecté:
Requête GET
Lorsque vous effectuez une recherche simple demande, vous obtenez:
par défaut, Twitter renvoie 25 meilleurs résultats, mais si vous cliquez sur
all
vous pouvez obtenir en temps réel les tweets:JSON contenu
Plus de Tweets sont chargés sur la page via AJAX:
Utilisation
max_position
à la demande de la prochaine tweetsLe suivant tableau json renvoie tout ce que vous devez gratter le contenu:
Des éléments du DOM
Voici une liste de
DOM elements
vous pouvez utiliser pour extraireLes auteurs poignée twitter
Le nom de l'auteur
L'ID utilisateur de l'auteur
Timestamp de la poste
Timestamp de la poste en ms
Texte du Tweet
Nombre de Retweets
Nombre de Favo
Ressources
file_get_contents()
par exempleSi vous êtes toujours à la recherche pour les non authentifié tweets en JSON, cela devrait fonctionner:
https://github.com/cosmocatalano/tweet-2-json
Vous pouvez utiliser l'api twitter v1 à prendre les tweets sans utiliser OAuth. Par exemple: cette enchaîner des virages @jack 100 derniers tweets.
La chronologie de la documentation est ici.
Voici un rapide hack (vraiment un hack, doit être utilisé avec prudence, car ses pas dans l'avenir) qui utilise http://anyorigin.com pour gratter le site twitter pour les derniers tweets.
http://codepen.io/JonOlick/pen/XJaXBd
Il fonctionne en utilisant anyorigin (vous avez à payer pour l'utiliser) à saisir le code HTML. Il analyse ensuite le code HTML à l'aide de jquery pour extraire les tweets.
Tweets sur le site mobile, utiliser un div avec la classe .tweet-texte, donc c'est plutôt indolore.
Le code ressemble à ceci:
La méthode "GET statuts/user_timeline" besoin d'une Authentification de l'utilisateur comme vous pouvez le voir sur la documentation officielle :
Vous pouvez utiliser la méthode de recherche "faire des recherches" qui nécessite pas d'authentification.
Vous avez un code pour commencer ici : http://jsfiddle.net/73L4c/6/