SubredditFlair¶
-
class
praw.models.reddit.subreddit.
SubredditFlair
(subreddit: praw.models.Subreddit)¶ Provide a set of functions to interact with a Subreddit’s flair.
-
__call__
(redditor: Optional[Union[praw.models.Redditor, str]] = None, **generator_kwargs: Any) → Iterator[praw.models.Redditor]¶ Return a
ListingGenerator
for Redditors and their flairs.- Parameters
redditor – When provided, yield at most a single
Redditor
instance (default: None).
Additional keyword arguments are passed in the initialization of
ListingGenerator
.Usage:
for flair in reddit.subreddit("NAME").flair(limit=None): print(flair)
-
__init__
(subreddit: praw.models.Subreddit)¶ Create a SubredditFlair instance.
- Parameters
subreddit – The subreddit whose flair to work with.
-
configure
(position: str = 'right', self_assign: bool = False, link_position: str = 'left', link_self_assign: bool = False, **settings: Any)¶ Update the subreddit’s flair configuration.
- Parameters
position – One of left, right, or False to disable (default: right).
self_assign – (boolean) Permit self assignment of user flair (default: False).
link_position – One of left, right, or False to disable (default: left).
link_self_assign – (boolean) Permit self assignment of link flair (default: False).
Additional keyword arguments can be provided to handle new settings as Reddit introduces them.
-
delete
(redditor: Union[praw.models.Redditor, str])¶ Delete flair for a Redditor.
- Parameters
redditor – A redditor name (e.g.,
"spez"
) orRedditor
instance.
See also
update()
to delete the flair of many Redditors at once.
-
delete_all
() → List[Dict[str, Union[str, bool, Dict[str, str]]]]¶ Delete all Redditor flair in the Subreddit.
- Returns
List of dictionaries indicating the success or failure of each delete.
-
link_templates
() → praw.models.reddit.subreddit.SubredditLinkFlairTemplates¶ Provide an instance of
SubredditLinkFlairTemplates
.Use this attribute for interacting with a subreddit’s link flair templates. For example to list all the link flair templates for a subreddit which you have the
flair
moderator permission on try:for template in reddit.subreddit("NAME").flair.link_templates: print(template)
-
set
(redditor: Union[praw.models.Redditor, str], text: str = '', css_class: str = '', flair_template_id: Optional[str] = None)¶ Set flair for a Redditor.
- Parameters
redditor – (Required) A redditor name (e.g.,
"spez"
) orRedditor
instance.text – The flair text to associate with the Redditor or Submission (default: “”).
css_class – The css class to associate with the flair html ((default: “”)). Use either this or
flair_template_id
.flair_template_id – The ID of the flair template to be used (default:
None
). Use either this orcss_class
.
This method can only be used by an authenticated user who is a moderator of the associated Subreddit.
For example:
reddit.subreddit("redditdev").flair.set("bboe", "PRAW author", css_class="mods") template = "6bd28436-1aa7-11e9-9902-0e05ab0fad46" reddit.subreddit("redditdev").flair.set( "spez", "Reddit CEO", flair_template_id=template )
-
templates
() → praw.models.reddit.subreddit.SubredditRedditorFlairTemplates¶ Provide an instance of
SubredditRedditorFlairTemplates
.Use this attribute for interacting with a subreddit’s flair templates. For example to list all the flair templates for a subreddit which you have the
flair
moderator permission on try:for template in reddit.subreddit("NAME").flair.templates: print(template)
-
update
(flair_list: Iterator[Union[str, praw.models.Redditor, Dict[str, Union[str, praw.models.Redditor]]]], text: str = '', css_class: str = '') → List[Dict[str, Union[str, bool, Dict[str, str]]]]¶ Set or clear the flair for many Redditors at once.
- Parameters
flair_list – Each item in this list should be either: the name of a Redditor, an instance of
Redditor
, or a dictionary mapping keysuser
,flair_text
, andflair_css_class
to their respective values. Theuser
key should map to a Redditor, as described above. When a dictionary isn’t provided, or the dictionary is missing one offlair_text
, orflair_css_class
attributes the default values will come from the the following arguments.text – The flair text to use when not explicitly provided in
flair_list
(default: “”).css_class – The css class to use when not explicitly provided in
flair_list
(default: “”).
- Returns
List of dictionaries indicating the success or failure of each update.
For example, to clear the flair text, and set the
praw
flair css class on a few users try:subreddit.flair.update(["bboe", "spez", "spladug"], css_class="praw")
-