Skip to content
Back to top
View this page

# SubListing

class praw.models.listing.mixins.redditor.SubListing(reddit: praw.Reddit, base_path: str, subpath: str)

  Helper class for generating `ListingGenerator` objects.

  __init__(reddit: praw.Reddit, base_path: str, subpath: str)

    Initialize a `SubListing` instance.

    Parameters:

      - reddit – An instance of `Reddit`.

      - base_path – The path to the object up to this point.

      - subpath – The additional path to this sublisting.

  controversial(*, time_filter: str = 'all', **generator_kwargs: str | int | Dict[str, str]) → Iterator[Any]

    Return a `ListingGenerator` for controversial items.

    Parameters:

      time_filter – Can be one of: `"all"`, `"day"`, `"hour"`, `"month"`, `"week"`, or `"year"` (default: `"all"`).

    Raises:

      `ValueError` if `time_filter` is invalid.

    Additional keyword arguments are passed in the initialization of `ListingGenerator`.

    This method can be used like:

        reddit.domain("imgur.com").controversial(time_filter="week")
        reddit.multireddit(redditor="samuraisam", name="programming").controversial(
            time_filter="day"
        )
        reddit.redditor("spez").controversial(time_filter="month")
        reddit.redditor("spez").comments.controversial(time_filter="year")
        reddit.redditor("spez").submissions.controversial(time_filter="all")
        reddit.subreddit("all").controversial(time_filter="hour")

  hot(**generator_kwargs: str | int | Dict[str, str]) → Iterator[Any]

    Return a `ListingGenerator` for hot items.

    Additional keyword arguments are passed in the initialization of `ListingGenerator`.

    This method can be used like:

        reddit.domain("imgur.com").hot()
        reddit.multireddit(redditor="samuraisam", name="programming").hot()
        reddit.redditor("spez").hot()
        reddit.redditor("spez").comments.hot()
        reddit.redditor("spez").submissions.hot()
        reddit.subreddit("all").hot()

  new(**generator_kwargs: str | int | Dict[str, str]) → Iterator[Any]

    Return a `ListingGenerator` for new items.

    Additional keyword arguments are passed in the initialization of `ListingGenerator`.

    This method can be used like:

        reddit.domain("imgur.com").new()
        reddit.multireddit(redditor="samuraisam", name="programming").new()
        reddit.redditor("spez").new()
        reddit.redditor("spez").comments.new()
        reddit.redditor("spez").submissions.new()
        reddit.subreddit("all").new()

  classmethod parse(data: Dict[str, Any], reddit: praw.Reddit) → Any

    Return an instance of `cls` from `data`.

    Parameters:

      - data – The structured data.

      - reddit – An instance of `Reddit`.

  top(*, time_filter: str = 'all', **generator_kwargs: str | int | Dict[str, str]) → Iterator[Any]

    Return a `ListingGenerator` for top items.

    Parameters:

      time_filter – Can be one of: `"all"`, `"day"`, `"hour"`, `"month"`, `"week"`, or `"year"` (default: `"all"`).

    Raises:

      `ValueError` if `time_filter` is invalid.

    Additional keyword arguments are passed in the initialization of `ListingGenerator`.

    This method can be used like:

        reddit.domain("imgur.com").top(time_filter="week")
        reddit.multireddit(redditor="samuraisam", name="programming").top(time_filter="day")
        reddit.redditor("spez").top(time_filter="month")
        reddit.redditor("spez").comments.top(time_filter="year")
        reddit.redditor("spez").submissions.top(time_filter="all")
        reddit.subreddit("all").top(time_filter="hour")