Closed KonoVitoDa closed 1 year ago
The author of one of the Tweets in this quote chain got suspended and that doesn't get properly handled yet.
"result": {
"__typename": "TweetUnavailable",
"reason": "Suspended"
}
The second Tweet is marked as NSFW and you need to be logged in to access it. The error message should definitely be improved, though.
"result": {
"__typename": "TweetUnavailable",
"reason": "NsfwLoggedOut"
}
The author of one of the Tweets in this quote chain got suspended and that doesn't get properly handled yet.
Oh, I see. I hope the bug to be fixed. I think it started occurring recently, maybe as a result of some new change on Twitter.
The second Tweet is marked as NSFW and you need to be logged in to access it.
I was already logged in, but seems like I've found the cause: I was using one of my accounts in which I hadn't set abirth date yet.
Oh, I forgot to mention another problem related with quoted tweets: even with quoted=false
, the quoted tweets are still downloaded.
I've found a tweet where the "core" error occurs when I'm logged in, but not when I'm as guest: https://twitter.com/i/web/status/1484366870560243717
PS C:\Users\Vitor> gallery-dl https://twitter.com/i/web/status/1484366870560243717 --verbose
[gallery-dl][debug] Version 1.25.8
[gallery-dl][debug] Python 3.11.4 - Windows-10-10.0.19045-SP0
[gallery-dl][debug] requests 2.31.0 - urllib3 2.0.4
[gallery-dl][debug] Configuration Files ['%USERPROFILE%\\gallery-dl\\config.json']
[gallery-dl][debug] Starting DownloadJob for 'https://twitter.com/i/web/status/1484366870560243717'
[twitter][debug] Using TwitterTweetExtractor for 'https://twitter.com/i/web/status/1484366870560243717'
[urllib3.connectionpool][debug] Starting new HTTPS connection (1): twitter.com:443
[urllib3.connectionpool][debug] https://twitter.com:443 "GET /i/api/graphql/2ICDjqPd81tulZcYrtpTuQ/TweetResultByRestId?variables=%7B%22tweetId%22%3A%221484366870560243717%22%2C%22withCommunity%22%3Afalse%2C%22includePromotedContent%22%3Afalse%2C%22withVoice%22%3Afalse%7D&features=%7B%22creator_subscriptions_tweet_preview_api_enabled%22%3Atrue%2C%22tweetypie_unmention_optimization_enabled%22%3Atrue%2C%22responsive_web_edit_tweet_api_enabled%22%3Atrue%2C%22graphql_is_translatable_rweb_tweet_is_translatable_enabled%22%3Atrue%2C%22view_counts_everywhere_api_enabled%22%3Atrue%2C%22longform_notetweets_consumption_enabled%22%3Atrue%2C%22responsive_web_twitter_article_tweet_consumption_enabled%22%3Afalse%2C%22tweet_awards_web_tipping_enabled%22%3Afalse%2C%22freedom_of_speech_not_reach_fetch_enabled%22%3Atrue%2C%22standardized_nudges_misinfo%22%3Atrue%2C%22tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled%22%3Atrue%2C%22longform_notetweets_rich_text_read_enabled%22%3Atrue%2C%22longform_notetweets_inline_media_enabled%22%3Atrue%2C%22responsive_web_graphql_exclude_directive_enabled%22%3Atrue%2C%22verified_phone_label_enabled%22%3Afalse%2C%22responsive_web_media_download_video_enabled%22%3Afalse%2C%22responsive_web_graphql_skip_user_profile_image_extensions_enabled%22%3Afalse%2C%22responsive_web_graphql_timeline_navigation_enabled%22%3Atrue%2C%22responsive_web_enhance_cards_enabled%22%3Afalse%7D&fieldToggles=%7B%22withArticleRichContentState%22%3Afalse%7D HTTP/1.1" 200 2044
[twitter][error] An unexpected error occurred: KeyError - 'core'. Please run gallery-dl again with the --verbose flag, copy its output and report this issue on https://github.com/mikf/gallery-dl/issues .
[twitter][debug]
Traceback (most recent call last):
File "C:\Users\Vitor\AppData\Local\Programs\Python\Python311\Lib\site-packages\gallery_dl\job.py", line 96, in run
for msg in extractor:
File "C:\Users\Vitor\AppData\Local\Programs\Python\Python311\Lib\site-packages\gallery_dl\extractor\twitter.py", line 83, in items
for tweet in self.tweets():
^^^^^^^^^^^^^
File "C:\Users\Vitor\AppData\Local\Programs\Python\Python311\Lib\site-packages\gallery_dl\extractor\twitter.py", line 927, in tweets
return self._tweets_single(self.tweet_id)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Vitor\AppData\Local\Programs\Python\Python311\Lib\site-packages\gallery_dl\extractor\twitter.py", line 933, in _tweets_single
self._assign_user(tweet["core"]["user_results"]["result"])
But when I use guest token:
PS C:\Users\Vitor> gallery-dl https://twitter.com/i/web/status/1484366870560243717 -o username= -o password=
# D:\Downloads\Twitter\msmrdaaaaa 1484366870560243717 p1 [2022-01-21].jpg
EDIT: Another one: https://twitter.com/millyikimasu/status/1624486740642734080
Seems to occur when the author limits who can reply to the tweet.
This should all be fixed with https://github.com/mikf/gallery-dl/commit/fb3f0453dbc526913ddac119a21e638f8ca67573.
I've found a tweet where the "core" error occurs when I'm logged in, but not when I'm as guest:
Probably because your account is blocked.
Probably because your account is blocked.
I'm not, and I tested with threed different accounts.
Seems to occur when the author limits who can reply to the tweet.
I can download from both Tweets as guest and when logged in without any errors.
You could check Twitter's response with --write-pages
to see what's wrong.
edit: I figured out what's wrong
diff --git a/gallery_dl/extractor/twitter.py b/gallery_dl/extractor/twitter.py
index 6f80ab8d..665ef0b9 100644
--- a/gallery_dl/extractor/twitter.py
+++ b/gallery_dl/extractor/twitter.py
@@ -1281,6 +1281,8 @@ class TwitterAPI():
}),
}
tweet = self._call(endpoint, params)["data"]["tweetResult"]["result"]
+ if "tweet" in tweet:
+ tweet = tweet["tweet"]
if tweet.get("__typename") == "TweetUnavailable":
reason = tweet.get("reason")
I hope it gets fixed. :)
Should be working now (https://github.com/mikf/gallery-dl/commit/089d1a4f672159c70ff35bf17327c849eb861031)
The first one seems to occur with chains of multiple quoted tweets.
I haven't figured out when the second one occurs