Open Darthagnon opened 2 years ago
Been doing some more research. Here's the blog article explaining how a dev implemented RSS feeds from twitter back in the day (and here is his Gist.
I've also taken a brief look at the Feedbro source (available, once you install the Feedbro extension, at
C:\Users\Username\AppData\Local\Publisher\Browser\User Data\Default\Extensions\mefgmmbdailogpfhfblcnnjfmnpnmdfa\version\scripts-core\feedbro.min.js
I don't fully understand it, but seeing an authtoken and a bunch of references to graphQL, I'm wondering if Feedbro is abusing a workaround in Twitter's social network sharing graphQL implementation to extract images and stringified text?
" + b.content + "
"; b.content = feedbro.Strings.linkify(b.content, true, "twitter-tweet-link"); b.content = b.content.replace(j, this.hashtagMapper); b.content = b.content.replace(g, this.usernameMapper); if (w && !y) { b.content += w } if (y) { b.content += y } if (e) { h = ""; D = n[e.user_id_str]; v = this.getContent(e); l = e.full_text; l = feedbro.Strings.linkify(l, true, "twitter-tweet-link"); l = l.replace(j, this.hashtagMapper); l = l.replace(g, this.usernameMapper); h += "" + this.createTweetTextHtml(a) + "
" }; feedbro.TwPlugin.prototype.getMedia = function (g) { if (g.extended_entities && g.extended_entities.media) { var f = g.extended_entities.media[0]; var e, b, d = ""; if (f.type == "photo") { b = this.getSizeAttribute(f); d = "" } else { if ((f.type == "video" || f.type == "animated_gif") && f.video_info && f.video_info.variants && f.video_info.variants.length > 0) { var c = f.video_info.variants; var a = c[0]; if (a.bitrate == undefined) { a.bitrate = 0 } for (e = 1; e < c.length; e++) { if (c[e].bitrate > a.bitrate) { a = c[e] } } b = this.getSizeAttribute(f); d = "I'm getting the Twitter feed through Nitter, with images, videos and so on.
Originally posted by @Darthagnon in https://github.com/yang991178/fluent-reader/issues/23#issuecomment-1224512243