diff --git a/instaloader/instaloader.py b/instaloader/instaloader.py
index <HASH>..<HASH> 100644
--- a/instaloader/instaloader.py
+++ b/instaloader/instaloader.py
@@ -823,7 +823,7 @@ class Instaloader:
                         self.download_profilepic(profile)
 
                 # Catch some errors
-                if profile.is_private:
+                if profile.is_private and (tagged or highlights or posts):
                     if not self.context.is_logged_in:
                         raise LoginRequiredException("--login=USERNAME required.")
                     if not profile.followed_by_viewer and self.context.username != profile.username:
download_profiles: Check errors only if required

Fixes #<I>, where with `--profile-pic-only` an error message is printed
(without any further implications) when downloading profile pictures of private
profiles without being logged in.