def user_info_by_username_v1(self, username: str) -> User: """ Get user object from user name Parameters ---------- username: str User name of an instagram account Returns ------- User An object of User type """ try: result = self.private_request(f"users/{username}/usernameinfo/") except ClientNotFoundError as e: raise UserNotFound(e, username=username, **self.last_json) except ClientError as e: if "User not found" in str(e): raise UserNotFound(e, username=username, **self.last_json) raise e return extract_user_v1(result["user"])
def user_info_v1(self, user_id: int) -> User: """ Get user object from user id Parameters ---------- user_id: int User id of an instagram account Returns ------- User An object of User type """ user_id = int(user_id) try: result = self.private_request(f"users/{user_id}/info/") except ClientNotFoundError as e: raise UserNotFound(e, user_id=user_id, **self.last_json) except ClientError as e: if "User not found" in str(e): raise UserNotFound(e, user_id=user_id, **self.last_json) raise e return extract_user_v1(result["user"])