From a95980752426f8e19646b0e00999f0566b779bf5 Mon Sep 17 00:00:00 2001 From: stefanodvx <69367859+stefanodvx@users.noreply.github.com> Date: Sat, 26 Apr 2025 19:50:30 +0200 Subject: [PATCH] twitter: temporary fix we're aiming to automatically generate x-client-transaction-id header. due to a recent change on twitter backend, this header is now required. sadly, its not static, so would propably break again anytime soon --- ext/instagram/util.go | 1 - ext/twitter/main.go | 5 +++-- ext/twitter/util.go | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ext/instagram/util.go b/ext/instagram/util.go index f868661..5691728 100644 --- a/ext/instagram/util.go +++ b/ext/instagram/util.go @@ -119,7 +119,6 @@ func ParseGQLMedia( }) case "GraphImage", "XDTGraphImage": - media.AddFormat(&models.MediaFormat{ FormatID: "image", Type: enums.MediaTypePhoto, diff --git a/ext/twitter/main.go b/ext/twitter/main.go index 5f6804a..508a457 100644 --- a/ext/twitter/main.go +++ b/ext/twitter/main.go @@ -15,8 +15,9 @@ import ( ) const ( - apiHostname = "x.com" - apiEndpoint = "https://x.com/i/api/graphql/zZXycP0V6H7m-2r0mOnFcA/TweetDetail" + apiHostname = "x.com" + apiEndpoint = "https://x.com/i/api/graphql/zZXycP0V6H7m-2r0mOnFcA/TweetDetail" + transactionID = "H/HJB3naILIqzncBBvY50XFL36IYeol67HU4ZlUe8wYvWdn9q7KJf7k2UBKOMwliRmCnohzCodsUCuvWOl9t0Z/wVY3QHA" ) var ShortExtractor = &models.Extractor{ diff --git a/ext/twitter/util.go b/ext/twitter/util.go index 43f75bb..a7c4374 100644 --- a/ext/twitter/util.go +++ b/ext/twitter/util.go @@ -33,6 +33,7 @@ func BuildAPIHeaders(cookies []*http.Cookie) map[string]string { headers := map[string]string{ "authorization": "Bearer " + authToken, "user-agent": util.ChromeUA, + "x-client-transaction-id": transactionID, "x-twitter-auth-type": "OAuth2Session", "x-twitter-client-language": "en", "x-twitter-active-user": "yes",