diff --git a/rtv/__main__.py b/rtv/__main__.py index 7dd75af..9cc78b0 100644 --- a/rtv/__main__.py +++ b/rtv/__main__.py @@ -97,14 +97,15 @@ def main(): config.unicode = args.unicode + # Squelch SSL warnings for Ubuntu + logging.captureWarnings(True) if args.log: logging.basicConfig(level=logging.DEBUG, filename=args.log) - logging.captureWarnings(True) try: print('Connecting...') reddit = praw.Reddit(user_agent=AGENT) - reddit.config.decode_html_entities = True + reddit.config.decode_html_entities = False if args.username: # PRAW will prompt for password if it is None reddit.login(args.username, args.password) diff --git a/rtv/content.py b/rtv/content.py index 9c3c375..c6bbd8b 100644 --- a/rtv/content.py +++ b/rtv/content.py @@ -43,8 +43,16 @@ class BaseContent(object): retval = [] while stack: item = stack.pop(0) - if not isinstance(item, praw.objects.MoreComments): + if isinstance(item, praw.objects.MoreComments): + if item.count == 0: + # MoreComments item count should never be zero, but if it + # is then discard the MoreComment object. Need to look into + # this further. + continue + else: if item._replies is None: + # Attach children MoreComment replies to parents + # https://github.com/praw-dev/praw/issues/391 item._replies = [stack.pop(0)] nested = getattr(item, 'replies', None) if nested: @@ -122,7 +130,7 @@ class SubmissionContent(BaseContent): list for repeat access. """ - def __init__(self, submission, loader, indent_size=2, max_indent_level=4): + def __init__(self, submission, loader, indent_size=2, max_indent_level=8): self.indent_size = indent_size self.max_indent_level = max_indent_level @@ -135,7 +143,7 @@ class SubmissionContent(BaseContent): self._comment_data = [self.strip_praw_comment(c) for c in comments] @classmethod - def from_url(cls, reddit, url, loader, indent_size=2, max_indent_level=4): + def from_url(cls, reddit, url, loader, indent_size=2, max_indent_level=8): try: with loader():