From 53a5d95b7d014de279fcc437132f5ef2886c8d1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Sat, 19 Nov 2022 11:10:18 +0100 Subject: [PATCH] [instagram] skip private check for avatars (#3255) --- gallery_dl/extractor/instagram.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gallery_dl/extractor/instagram.py b/gallery_dl/extractor/instagram.py index c6b7fb79..24ad873b 100644 --- a/gallery_dl/extractor/instagram.py +++ b/gallery_dl/extractor/instagram.py @@ -582,7 +582,7 @@ class InstagramAvatarExtractor(InstagramExtractor): def posts(self): if self._logged_in: - user_id = self.api.user_id(self.item) + user_id = self.api.user_id(self.item, check_private=False) user = self.api.user_by_id(user_id) avatar = (user.get("hd_profile_pic_url_info") or user["hd_profile_pic_versions"][-1]) @@ -780,14 +780,15 @@ class InstagramRestAPI(): endpoint = "/v1/users/{}/info/".format(user_id) return self._call(endpoint)["user"] - def user_id(self, screen_name): + def user_id(self, screen_name, check_private=True): if screen_name.startswith("id:"): return screen_name[3:] user = self.user_by_name(screen_name) if user is None: raise exception.AuthorizationError( "Login required to access this profile") - if user["is_private"] and not user["followed_by_viewer"]: + if check_private and user["is_private"] and \ + not user["followed_by_viewer"]: name = user["username"] s = "" if name.endswith("s") else "s" raise exception.StopExtraction("%s'%s posts are private", name, s)