aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/twitter.py
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2025-09-07 20:40:52 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2025-09-07 20:40:52 -0400
commit88f40b9b0dc47fa22a209e8246d97a43f4b60cb2 (patch)
tree5764999c5d1ce99ccebd92dddb7a3914b55e43c2 /gallery_dl/extractor/twitter.py
parent7ac1b3bb04430b981f4f796fd765499cdc8b67ec (diff)
parent243b2597edb922fe7e0b0d887e80bb7ebbe72ab7 (diff)
Update upstream source from tag 'upstream/1.30.6'
Update to upstream version '1.30.6' with Debian dir 9f14996b07ee3246bdcde2ec12796c77da2a3060
Diffstat (limited to 'gallery_dl/extractor/twitter.py')
-rw-r--r--gallery_dl/extractor/twitter.py44
1 files changed, 29 insertions, 15 deletions
diff --git a/gallery_dl/extractor/twitter.py b/gallery_dl/extractor/twitter.py
index c928507..c919cb8 100644
--- a/gallery_dl/extractor/twitter.py
+++ b/gallery_dl/extractor/twitter.py
@@ -471,21 +471,35 @@ class TwitterExtractor(Extractor):
except KeyError:
pass
+ admin = creator = banner = None
+ try:
+ if results := com.get("admin_results"):
+ admin = results["result"]["core"]["screen_name"]
+ except Exception:
+ pass
+ try:
+ if results := com.get("creator_results"):
+ creator = results["result"]["core"]["screen_name"]
+ except Exception:
+ pass
+ try:
+ if results := com.get("custom_banner_media"):
+ banner = results["media_info"]["original_img_url"]
+ except Exception:
+ pass
+
self._user_cache[f"C#{cid}"] = cdata = {
"id": text.parse_int(cid),
- "name": com["name"],
- "description": com["description"],
- "date": text.parse_timestamp(com["created_at"] // 1000),
- "nsfw": com["is_nsfw"],
- "role": com["role"],
- "member_count": com["member_count"],
- "rules": [rule["name"] for rule in com["rules"]],
- "admin": (admin := com.get("admin_results")) and
- admin["result"]["core"]["screen_name"], # noqa: E131
- "creator": (creator := com.get("creator_results")) and
- creator["result"]["core"]["screen_name"], # noqa: E131
- "banner": (banner := com.get("custom_banner_media")) and
- banner["media_info"]["original_img_url"], # noqa: E131
+ "name": com.get("name"),
+ "description": com.get("description"),
+ "date": text.parse_timestamp(com.get("created_at", 0) // 1000),
+ "nsfw": com.get("is_nsfw"),
+ "role": com.get("role"),
+ "member_count": com.get("member_count"),
+ "rules": [rule["name"] for rule in com.get("rules", ())],
+ "admin" : admin,
+ "creator": creator,
+ "banner" : banner,
}
return cdata
@@ -512,8 +526,8 @@ class TwitterExtractor(Extractor):
entities = legacy["entities"]
self._user_cache[uid] = udata = {
"id" : text.parse_int(uid),
- "name" : core["screen_name"],
- "nick" : core["name"],
+ "name" : core.get("screen_name"),
+ "nick" : core.get("name"),
"location" : user["location"]["location"],
"date" : text.parse_datetime(
core["created_at"], "%a %b %d %H:%M:%S %z %Y"),