2010-12-10 3 views
2

Quelqu'un pourrait-il savoir quel est le nombre maximum d'utilisateurs sur Twitter? C'est à ce moment-là il ya environ 200mil utilisateurs, de sorte que la gamme de l'ID de 1 - 200million? Je constate que dans cette gamme, certains identifiants ne sont pas utilisés.Max ID Twitter?

J'ai un script python qui accède essentiellement l'adresse suivante:

"/1/statuses/user_timeline/" + str(user_id) + ".json?count=200"

Merci,

Répondre

2

L'API de Twitter ne garantit pas que la user_id est une valeur de plus en plus de façon monotone. C'est simplement un "identifiant unique permanent identifiant un objet" (de l'API docs). Cela signifie qu'ils pourraient à l'avenir réutiliser des ID (d'utilisateurs supprimés) ou même allouer les valeurs de manière semi-aléatoire. Les identifiants peuvent ne pas être attribués de manière séquentielle.

La lecture trop importante de cette valeur, par exemple le nombre d'utilisateurs inscrits, n'est probablement pas très fiable.

+0

D'accord, il semble que j'aurais dû utiliser 'user_id' pour éviter toute confusion avec un identifiant valide. – eWizardII

+1

API Link cassé –

0

Personne ne le sait.

Il y a eu des discussions à ce sujet en ce qui concerne le nombre d'utilisateurs de Twitter.

Il y avait beaucoup de tests, ainsi que le sondage des gammes id etc.

Les résultats ont montré que les ids ont été successivement incrémentant depuis longtemps, mais avaient des lacunes régulières d'environ 10 entre eux, et parfois aussi semblait être complétement aléatoire.

Je ne sais pas avec quelle précision cette information a été recueillie, et l'objectif était autre chose, mais je pense que vous avez compris. D'un point de vue technique, je ne m'attendrais à rien d'autre dans un réseau aussi grand que Twitter. Je suis à peu près sûr que les ID sont partagés, ce qui signifie qu'ils sont assignés dans des révisions ou des serveurs spéciaux. Alors que par exemple si votre ID est égal à mudolo 17, je sais que je dois regarder sur ce même serveur. Ou dans ce même pays. Ou quelque chose.

Ou maby le serveur a juste son propre préfixe ou classe de résidu pour assigner des identifiants lorsqu'un nouvel utilisateur s'inscrit pour éviter des problèmes de réplication.

Il est également rare dans la plupart des cas, ou "pas si cool" de laisser échapper des informations. Ne me demandez pas pourquoi, c'est juste mon expérience que les entreprises veulent montrer le moins d'informations possible à l'extérieur.

Cela inclut de ne pas avoir un système d'incrémentation d'identifiants transparanet reproductible.

Il est également vulnérable pour certaines sortes d'attaques nuisibles, rampement indésirable, des trucs comme ça.

Donc, mon point est.

Il n'y a aucun moyen de vous donner une réponse fiable. Et cela ne devrait pas être nécessaire. Vous devez concevoir votre application pour faire face à toute situation possible.

Si vous voulez connaître la taille de votre champ de base de données, vous devez éviter les conflits.

Je pense que l'entier devrait être bon pour l'instant.(même sur les systèmes 32 bits)

Mais soyez toujours prêt à mettre à niveau.

Surtout ne supposez pas qu'il restera numérique. C'est juste une chaîne unique!

3

Le Twitter API dit que id est un nombre entier supérieur à « 53 bits », et en ce qu'un nombre entier de 64 bits est sûr de tenir cette valeur. Néanmoins, il est recommandé d'utiliser la représentation sous forme de chaîne id_str"pour rester prudent"!?!

+2

Wow, ils ont vraiment écrit "pour rester du bon côté"!?! – Noam

+2

Les documents de l'API de Twitter regorgent de gemmes comme celle-ci. – dpb

+0

Docs en question: https://dev.twitter.com/overview/api/twitter-ids-json-and-snowflake – indivisible

Questions connexes