From 2b8d57f0abedecf95fcc58bfef073d567d128b82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Tue, 8 Sep 2020 23:17:50 +0200 Subject: [PATCH] =?UTF-8?q?[twitter]=20support=20'/intent/user=3Fuser=5Fid?= =?UTF-8?q?=3D=E2=80=A6'=20URLs=20(#980)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gallery_dl/extractor/twitter.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gallery_dl/extractor/twitter.py b/gallery_dl/extractor/twitter.py index c8ec1c1d..236a001f 100644 --- a/gallery_dl/extractor/twitter.py +++ b/gallery_dl/extractor/twitter.py @@ -245,7 +245,8 @@ class TwitterExtractor(Extractor): class TwitterTimelineExtractor(TwitterExtractor): """Extractor for all images from a user's timeline""" subcategory = "timeline" - pattern = BASE_PATTERN + r"/(?!search)([^/?&#]+)/?(?:$|[?#])" + pattern = BASE_PATTERN + \ + r"/(?!search)(?:([^/?&#]+)/?(?:$|[?#])|intent/user\?user_id=(\d+))" test = ( ("https://twitter.com/supernaturepics", { "range": "1-40", @@ -253,8 +254,15 @@ class TwitterTimelineExtractor(TwitterExtractor): }), ("https://mobile.twitter.com/supernaturepics?p=i"), ("https://www.twitter.com/id:2976459548"), + ("https://twitter.com/intent/user?user_id=2976459548"), ) + def __init__(self, match): + TwitterExtractor.__init__(self, match) + uid = match.group(2) + if uid: + self.user = "id:" + uid + def tweets(self): return TwitterAPI(self).timeline_profile(self.user)