mirror of
https://github.com/instaloader/instaloader.git
synced 2024-11-20 01:02:30 +01:00
feat: add max_count parameter to limit posts on download (#2276)
This commit is contained in:
parent
a0169b7094
commit
eb2accc088
@ -1410,7 +1410,8 @@ class Instaloader:
|
|||||||
post_filter: Optional[Callable[[Post], bool]] = None,
|
post_filter: Optional[Callable[[Post], bool]] = None,
|
||||||
storyitem_filter: Optional[Callable[[Post], bool]] = None,
|
storyitem_filter: Optional[Callable[[Post], bool]] = None,
|
||||||
raise_errors: bool = False,
|
raise_errors: bool = False,
|
||||||
latest_stamps: Optional[LatestStamps] = None):
|
latest_stamps: Optional[LatestStamps] = None,
|
||||||
|
max_count: Optional[int] = None):
|
||||||
"""High-level method to download set of profiles.
|
"""High-level method to download set of profiles.
|
||||||
|
|
||||||
:param profiles: Set of profiles to download.
|
:param profiles: Set of profiles to download.
|
||||||
@ -1427,6 +1428,7 @@ class Instaloader:
|
|||||||
Whether :exc:`LoginRequiredException` and :exc:`PrivateProfileNotFollowedException` should be raised or
|
Whether :exc:`LoginRequiredException` and :exc:`PrivateProfileNotFollowedException` should be raised or
|
||||||
catched and printed with :meth:`InstaloaderContext.error_catcher`.
|
catched and printed with :meth:`InstaloaderContext.error_catcher`.
|
||||||
:param latest_stamps: :option:`--latest-stamps`.
|
:param latest_stamps: :option:`--latest-stamps`.
|
||||||
|
:param max_count: Maximum count of posts to download.
|
||||||
|
|
||||||
.. versionadded:: 4.1
|
.. versionadded:: 4.1
|
||||||
|
|
||||||
@ -1435,6 +1437,9 @@ class Instaloader:
|
|||||||
|
|
||||||
.. versionchanged:: 4.8
|
.. versionchanged:: 4.8
|
||||||
Add `latest_stamps` parameter.
|
Add `latest_stamps` parameter.
|
||||||
|
|
||||||
|
.. versionchanged:: 4.13
|
||||||
|
Add `max_count` parameter.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@contextmanager
|
@contextmanager
|
||||||
@ -1500,7 +1505,7 @@ class Instaloader:
|
|||||||
posts_to_download = profile.get_posts()
|
posts_to_download = profile.get_posts()
|
||||||
self.posts_download_loop(posts_to_download, profile_name, fast_update, post_filter,
|
self.posts_download_loop(posts_to_download, profile_name, fast_update, post_filter,
|
||||||
total_count=profile.mediacount, owner_profile=profile,
|
total_count=profile.mediacount, owner_profile=profile,
|
||||||
takewhile=posts_takewhile, possibly_pinned=3)
|
takewhile=posts_takewhile, possibly_pinned=3, max_count=max_count)
|
||||||
if latest_stamps is not None and posts_to_download.first_item is not None:
|
if latest_stamps is not None and posts_to_download.first_item is not None:
|
||||||
latest_stamps.set_last_post_timestamp(profile_name,
|
latest_stamps.set_last_post_timestamp(profile_name,
|
||||||
posts_to_download.first_item.date_local)
|
posts_to_download.first_item.date_local)
|
||||||
|
Loading…
Reference in New Issue
Block a user