Nitter fonctionne à nouveau
(github.com/zedeus)- La PR #927 de zedeus/nitter, « Fix everything », a été fusionnée dans
masterle 10 juillet 2023, apportant des changements pour rétablir les fonctionnalités cassées - Le rétablissement s’est fait via l’utilisation d’un nouveau bearer token et d’un ensemble d’endpoints mis à jour, avec une mise à jour du parseur en parallèle
- La fonction de recherche n’est pas totalement rétablie : au moment du commit, la recherche d’utilisateurs est activée, mais la recherche de tweets est désactivée
- Parmi les autres changements, les multi-user timelines ont été désactivées temporairement, et une correction du parsing de pinned tombstone est également incluse
- Le RSS fonctionne, mais il est désactivé sur nitter.net, donc sa disponibilité dépend de la configuration de l’instance
Étendue des corrections fusionnées
- La PR #927 de zedeus/nitter, « Fix everything », a été fusionnée de la branche
elon-fixversmaster- La fusion a eu lieu le 10 juillet 2023
- Un total de 4 commits est inclus
- Après la fusion, la branche
elon-fixa été supprimée
Méthode principale de rétablissement
- Le cœur du changement consiste à utiliser un nouveau bearer token et un ensemble d’endpoints mis à jour
- Le parseur a également été mis à jour pour fonctionner avec la structure de réponse modifiée
- Dans l’explication initiale, la fonctionnalité manquante est résumée comme étant la recherche
Changements liés à la recherche et aux timelines
- La recherche n’a été que partiellement rétablie
- Avec le commit
Enable user search, disable tweet search, la recherche d’utilisateurs est activée - La recherche de tweets est désactivée
- Avec le commit
- Avec le commit
Disable multi-user timelines for now, les multi-user timelines sont désactivées pour le moment
Corrections de parsing
- Le commit
Fix parsing of pinned tombstoneest inclus - Le problème de parsing lié à pinned tombstone a été corrigé séparément
État du RSS
- Dans les commentaires, une question a été posée sur le fonctionnement du RSS
- zedeus a répondu que le RSS fonctionne, mais qu’il est désactivé sur nitter.net
- Le support du RSS en lui-même et son activation sur nitter.net sont donc deux choses distinctes
1 commentaires
Commentaires sur Hacker News
Avertissement : cela peut sembler long et vaguement fanfaron, mais en résumé, contourner la limitation de débit de Twitter n’était pas si difficile
Je ne voulais pas toucher au pénible certificate pinning de Twitter, donc j’ai chargé l’APK Twitter sur Corellium, activé le « network monitor », puis ouvert l’app Twitter utilisable sans connexion
En cherchant et en consultant des tweets tout en regardant les journaux de requêtes, j’ai vu qu’il y avait une procédure de jeton invité similaire à celle du site web, avec seulement quelques différences
En reproduisant ces requêtes, on peut créer chaque jour quelques jetons OAuth sans expiration avec une seule IP. Ces jetons sont destinés aux utilisateurs non authentifiés, donc sans droits d’écriture, mais ce n’était pas nécessaire ici
En achetant environ 1 Go de bande passante chez un fournisseur de proxy avec un grand pool d’IP, on peut facilement obtenir des milliers de jetons/secrets en consommant très peu de bande passante, chacun avec sa propre limite de débit. L’IP réellement utilisée pour exploiter le jeton n’avait pas d’importance
Ensuite, j’ai suivi https://docs.google.com/document/d/1xVrPoNutyqTdQ04DXBEZW4ZW... et utilisé le fait que /statuses/lookup.json peut encore renvoyer 100 tweets d’un coup pour reconstituer quelque chose de proche de 50 % du Firehose de Twitter
Twitter ne bloquait pas non plus les IP de datacenter. J’ai essayé d’afficher les données sur https://firehose.lol, mais cela demandait des centaines de requêtes par seconde, ce qui m’a mis mal à l’aise, donc j’ai fini par couper le programme au bout de quelques minutes
Observer une partie du Firehose pendant quelques minutes était intéressant. Au début, j’avais oublié de masquer les tweets marqués possibly_sensitive, donc j’ai vu pendant quelques secondes des contenus assez suggestifs ; il y avait beaucoup de pubs de jeux d’argent en chinois alors que Twitter est bloqué en Chine, des comptes de promotion d’investissements douteux, des comptes avec des noms d’utilisateur du style FirstnameLastname3781264872 qui tweetaient trois mots aléatoires toutes les quelques secondes, et aussi quelques tweets drôles
C’est le projet Nim le plus impressionnant que j’aie vu jusqu’ici. Refaire un front-end complet, faire fonctionner l’authentification et gérer les comportements particuliers d’une API privée, c’est un travail énorme
Dans le contexte de Twitter, il y aurait sans doute eu plus de 20 personnes dédiées rien que pour prendre cela en charge. Chapeau à l’auteur pour y être arrivé
https://github.com/karaxnim/karax
C’est assez drôle que l’effet de la limitation de débit ait eu très peu d’impact sur les bots et les scrapers, tout en causant de gros dégâts à la base d’utilisateurs ordinaires du site
L’un des hommes les plus riches du monde, notoirement anti-syndical, a racheté cet espace et l’a rendu inutilisable à un moment où les inégalités se creusent et où la cohésion sociale s’effondre
Il n’y a plus d’espace pour s’organiser, et cela fait une menace de moins pour le capital
Quoi qu’Elmo fasse, rien ne semble fonctionner correctement
Après les changements d’API, le bearer token par défaut que j’utilisais a lui aussi cessé de fonctionner, mais en le modifiant de la même manière, mon application de téléchargement de Twitter Spaces remarche aussi normalement
0: https://github.com/Chiplis/moonbird
C’est quand même incroyable qu’on ne puisse toujours pas voir les profils ou les réponses sur Twitter sans se connecter
J’utilise Nitter depuis 4 ans, et je continuerai tant que ça fonctionne
/rssà la fin de l’URLOn n’était pas censé parler de Fight Club
Est-ce que c’est vraiment durable ? J’aimerais en savoir plus sur ce bearer token
Dans d’autres fils d’issues GitHub, on avait l’impression qu’à chaque fois qu’une méthode pour contourner les protections de Twitter était trouvée, elle finissait bloquée
On dirait qu’ils ont littéralement codé le jeton en dur dans le code source, ce qui signifie que des milliers d’instances Nitter et des milliers d’utilisateurs dans le monde utilisent le même jeton
Des entreprises d’IA pourraient aussi potentiellement l’utiliser, donc je ne vois pas bien comment cela peut continuer à fonctionner
Cela signifie que l’accès anonyme a été rétabli. Nitter n’utilise de toute façon pas l’ancienne API Twitter disparue. Elle a été brièvement rétablie, mais
Twitter doit fournir un portail web interopérable noscript/basic (x)html
Donc l’AI Scrapocalypse n’est plus un sujet d’importance critique ?
C’est comparable à une faille analogique. Tant que les données sont transmises du serveur au client, le scraping restera toujours possible
Apple essaie toutefois de rendre cela plus difficile : https://developer.apple.com/documentation/devicecheck/prepar...