CustomWidget¶
-
class
praw.models.CustomWidget(reddit, _data)¶ Class to represent a custom widget.
Find an existing one:
custom = None widgets = reddit.subreddit("redditdev").widgets for widget in widgets.sidebar: if isinstance(widget, praw.models.CustomWidget): custom = widget break print(custom.text) print(custom.css)
Create one (requires proper moderator permissions):
widgets = reddit.subreddit("redditdev").widgets styles = {"backgroundColor": "#FFFF66", "headerColor": "#3333EE"} custom = widgets.mod.add_custom_widget( "My custom widget", "# Hello world!", "/**/", 200, [], styles )
For more information on creation, see
add_custom_widget().Update one (requires proper moderator permissions):
new_styles = {"backgroundColor": "#FFFFFF", "headerColor": "#FF9900"} custom = custom.mod.update(shortName="My fav customization", styles=new_styles)
Delete one (requires proper moderator permissions):
custom.mod.delete()
Typical Attributes
This table describes attributes that typically belong to objects of this class. Since attributes are dynamically provided (see Determine Available Attributes of an Object), there is not a guarantee that these attributes will always be present, nor is this list necessarily complete.
Attribute
Description
cssThe CSS of the widget, as a
str.heightThe height of the widget, as an
int.idThe widget ID.
imageDataA
listofImageDatathat belong to the widget.kindThe widget kind (always
"custom").shortNameThe short name of the widget.
stylesA
dictwith the keys"backgroundColor"and"headerColor".stylesheetUrlA link to the widget’s stylesheet.
subredditThe
Subredditthe button widget belongs to.textThe text contents, as Markdown.
textHtmlThe text contents, as HTML.
-
__init__(reddit, _data)¶ Initialize the class.
-
mod()¶ Get an instance of
WidgetModerationfor this widget.Note
Using any of the methods of
WidgetModerationwill likely make the data in theSubredditWidgetsthat this widget belongs to outdated. To remedy this, callrefresh().
-