In [1]:
import praw
import json
In [2]:
# load config ...
with open('reddit_config.json') as f:
config = json.load(f)
In [3]:
reddit = praw.Reddit(client_id = config['client_id'],
client_secret = config['client_secret'],
user_agent = config['user_agent'])
In [30]:
vars(reddit)
Out[30]:
{'_authorized_core': None,
'_core': <prawcore.sessions.Session at 0x1767ca3d5f8>,
'_objector': <praw.objector.Objector at 0x1767b85c2b0>,
'_read_only_core': <prawcore.sessions.Session at 0x1767ca3d5f8>,
'_unique_counter': 0,
'auth': <praw.models.auth.Auth at 0x1767ca3dc18>,
'config': <praw.config.Config at 0x1767e13fd68>,
'front': <praw.models.front.Front at 0x1767ca3d7f0>,
'inbox': <praw.models.inbox.Inbox at 0x1767ca3de80>,
'live': <praw.models.helpers.LiveHelper at 0x1767ca3df28>,
'multireddit': <praw.models.helpers.MultiredditHelper at 0x1767ca3ddd8>,
'subreddit': <praw.models.helpers.SubredditHelper at 0x1767ca3df60>,
'subreddits': <praw.models.subreddits.Subreddits at 0x1767ca3dd30>,
'user': <praw.models.user.User at 0x1767ca3dc50>}
In [4]:
sub = 'bitcoin'
subreddit = reddit.subreddit(sub)
In [5]:
vars(subreddit)
Out[5]:
{'_banned': None,
'_comments': None,
'_contributor': None,
'_fetched': False,
'_filters': None,
'_flair': None,
'_info_params': {},
'_mod': None,
'_moderator': None,
'_modmail': None,
'_muted': None,
'_path': 'r/bitcoin/',
'_quarantine': None,
'_reddit': <praw.reddit.Reddit at 0x1767e13fd30>,
'_stream': None,
'_stylesheet': None,
'_wiki': None,
'display_name': 'bitcoin'}
In [23]:
submission = list(subreddit.top(limit=5))[0]
vars(submission)
Out[23]:
{'_comments_by_id': {},
'_fetched': False,
'_flair': None,
'_info_params': {},
'_mod': None,
'_reddit': <praw.reddit.Reddit at 0x1767e13fd30>,
'approved_at_utc': None,
'approved_by': None,
'archived': False,
'author': Redditor(name='LeeWallis'),
'author_flair_css_class': None,
'author_flair_text': None,
'banned_at_utc': None,
'banned_by': None,
'brand_safe': True,
'can_gild': False,
'can_mod_post': False,
'clicked': False,
'comment_limit': 2048,
'comment_sort': 'best',
'contest_mode': False,
'created': 1511947524.0,
'created_utc': 1511918724.0,
'distinguished': None,
'domain': 'v.redd.it',
'downs': 0,
'edited': False,
'gilded': 2,
'hidden': False,
'hide_score': False,
'id': '7g9cd3',
'is_crosspostable': False,
'is_reddit_media_domain': True,
'is_self': False,
'is_video': True,
'likes': None,
'link_flair_css_class': 'all',
'link_flair_text': '/r/all',
'locked': False,
'media': {'reddit_video': {'dash_url': 'https://v.redd.it/e7io27rdgt001/DASHPlaylist.mpd',
'duration': 15,
'fallback_url': 'https://v.redd.it/e7io27rdgt001/DASH_1_2_M',
'height': 360,
'hls_url': 'https://v.redd.it/e7io27rdgt001/HLSPlaylist.m3u8',
'is_gif': False,
'scrubber_media_url': 'https://v.redd.it/e7io27rdgt001/DASH_600_K',
'transcoding_status': 'completed',
'width': 640}},
'media_embed': {},
'mod_note': None,
'mod_reason_by': None,
'mod_reason_title': None,
'mod_reports': [],
'name': 't3_7g9cd3',
'num_comments': 4672,
'num_crossposts': 2,
'num_reports': None,
'over_18': False,
'parent_whitelist_status': 'all_ads',
'permalink': '/r/Bitcoin/comments/7g9cd3/its_official_1_bitcoin_10000_usd/',
'pinned': False,
'post_hint': 'hosted:video',
'preview': {'enabled': False,
'images': [{'id': 'ahvvd5VN_tlkRh7M5SH1nYnesPsKl1URJxuVzshGrjM',
'resolutions': [{'height': 60,
'url': 'https://i.redditmedia.com/L2SHpG8X4X5ukjdNgmCL_3DTEkPPrxrTV6YQltBnqCk.png?fit=crop&crop=faces%2Centropy&arh=2&w=108&s=c92c3b9454ceab54f3abb1a471eea7a9',
'width': 108},
{'height': 121,
'url': 'https://i.redditmedia.com/L2SHpG8X4X5ukjdNgmCL_3DTEkPPrxrTV6YQltBnqCk.png?fit=crop&crop=faces%2Centropy&arh=2&w=216&s=1405e7d01a4f4c94260b6937582e68b2',
'width': 216},
{'height': 179,
'url': 'https://i.redditmedia.com/L2SHpG8X4X5ukjdNgmCL_3DTEkPPrxrTV6YQltBnqCk.png?fit=crop&crop=faces%2Centropy&arh=2&w=320&s=4a27615e255c7addf5a755f064ec3d10',
'width': 320},
{'height': 359,
'url': 'https://i.redditmedia.com/L2SHpG8X4X5ukjdNgmCL_3DTEkPPrxrTV6YQltBnqCk.png?fit=crop&crop=faces%2Centropy&arh=2&w=640&s=3104a447de1a7cedb350148b666f0639',
'width': 640}],
'source': {'height': 404,
'url': 'https://i.redditmedia.com/L2SHpG8X4X5ukjdNgmCL_3DTEkPPrxrTV6YQltBnqCk.png?s=a040d39b0a090f7c645eb0024a193bb0',
'width': 720},
'variants': {}}]},
'quarantine': False,
'removal_reason': None,
'report_reasons': None,
'saved': False,
'score': 48189,
'secure_media': None,
'secure_media_embed': {},
'selftext': '',
'selftext_html': None,
'spoiler': False,
'stickied': False,
'subreddit': Subreddit(display_name='Bitcoin'),
'subreddit_id': 't5_2s3qj',
'subreddit_name_prefixed': 'r/Bitcoin',
'subreddit_type': 'public',
'suggested_sort': None,
'thumbnail': 'https://b.thumbs.redditmedia.com/Yu64fsWLTg45B8UZyNqxqiL8er-3A_Jc9cNOfvdCDvo.jpg',
'thumbnail_height': 78,
'thumbnail_width': 140,
'title': "It's official! 1 Bitcoin = $10,000 USD",
'ups': 48189,
'url': 'https://v.redd.it/e7io27rdgt001',
'user_reports': [],
'view_count': None,
'visited': False,
'whitelist_status': 'all_ads'}
In [27]:
vars(submission.author)
Out[27]:
{'_fetched': False,
'_info_params': {},
'_listing_use_sort': True,
'_path': 'user/LeeWallis/',
'_reddit': <praw.reddit.Reddit at 0x1767e13fd30>,
'_stream': None,
'name': 'LeeWallis'}
In [26]:
vars(submission.comments.list()[0])
Out[26]:
{'_fetched': True,
'_info_params': {},
'_mod': None,
'_reddit': <praw.reddit.Reddit at 0x1767e13fd30>,
'_replies': <praw.models.comment_forest.CommentForest at 0x1767e997860>,
'_submission': Submission(id='7g9cd3'),
'approved_at_utc': None,
'approved_by': None,
'archived': False,
'author': Redditor(name='SPOKANARCHY'),
'author_flair_css_class': None,
'author_flair_text': None,
'banned_at_utc': None,
'banned_by': None,
'body': 'Where’s the guy that’s going to eat his left nut. ',
'body_html': '<div class="md"><p>Where’s the guy that’s going to eat his left nut. </p>\n</div>',
'can_gild': True,
'can_mod_post': False,
'collapsed': False,
'collapsed_reason': None,
'controversiality': 0,
'created': 1511948955.0,
'created_utc': 1511920155.0,
'depth': 0,
'distinguished': None,
'downs': 0,
'edited': False,
'gilded': 0,
'id': 'dqhhrh0',
'is_submitter': False,
'likes': None,
'link_id': 't3_7g9cd3',
'mod_note': None,
'mod_reason_by': None,
'mod_reason_title': None,
'mod_reports': [],
'name': 't1_dqhhrh0',
'num_reports': None,
'parent_id': 't3_7g9cd3',
'permalink': '/r/Bitcoin/comments/7g9cd3/its_official_1_bitcoin_10000_usd/dqhhrh0/',
'removal_reason': None,
'report_reasons': None,
'saved': False,
'score': 2431,
'score_hidden': False,
'stickied': False,
'subreddit': Subreddit(display_name='Bitcoin'),
'subreddit_id': 't5_2s3qj',
'subreddit_name_prefixed': 'r/Bitcoin',
'subreddit_type': 'public',
'ups': 2431,
'user_reports': []}
In [ ]:
Content source: pepper-johnson/Erudition
Similar notebooks: