From c53625028d3860ffbbd48d4f1d17ba997e8d3b5f Mon Sep 17 00:00:00 2001 From: Ingo Marquardt Date: Fri, 18 Sep 2020 11:23:06 +0200 Subject: [PATCH] Avoid additional http request to get post's owner ID. (#809) --- instaloader/structures.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/instaloader/structures.py b/instaloader/structures.py index 78219a6..5fb7d3b 100644 --- a/instaloader/structures.py +++ b/instaloader/structures.py @@ -207,7 +207,13 @@ class Post: @property def owner_id(self) -> int: """The ID of the Post's owner.""" - return self.owner_profile.userid + # The ID may already be available, e.g. if the post instance was created + # from an `hashtag.get_posts()` iterator, so no need to make another + # http request. + if 'owner' in self._node and 'id' in self._node['owner']: + return self._node['owner']['id'] + else: + return self.owner_profile.userid @property def date_local(self) -> datetime: