как показать заголовки сообщений из списков с комментариями - PullRequest
0 голосов
/ 22 апреля 2020

Я использую praw для очистки комментариев reddit с его комментариями. В данный момент отображаются только комментарии и ответы в том порядке, в котором я хочу, но я хочу, чтобы заголовки сообщений также отображались в правильном порядке, чтобы пользователь мог распознать, что комментарии и ответы принадлежат этому соответствующему заголовку. Прямо сейчас он печатает все заголовки вверху, а затем все комментарии и ответы ниже, например:

Заголовок первого сообщения-> Второй заголовок-> Первый комментарий-> 1 ответ-> Второй комментарий-> Второй ответ

Но я хочу показать в следующем порядке:

Заголовок первого сообщения-> Первые комментарии-> Первые ответы-> Заголовок второго сообщения-> Вторые комментарии-> Вторые ответы.

Я попытался поместить заголовок представления в конвертированном документе, но я получаю сообщение об ошибке:

TypeError: 'DataFrame' objects are mutable, thus they cannot be hashed

код:

subreddit = reddit.subreddit('gamedeals')

conversedict = {}
hot_python = subreddit.hot(limit=3)

for submission in hot_python:
    if not submission.stickied:
        print('Title: {}, ups: {}, downs: {}, Have we visited?: {}, subid: {}'.format(submission.title,
                                                                                                   submission.ups,
                                                                                                   submission.downs,
                                                                                                   submission.visited,
                                                                                                   submission.id))

        submission.comments.replace_more(limit=0)
        for comment in submission.comments.list():
            if comment.id not in conversedict:
                conversedict[postTitle]=submission.title //I get the error here
                conversedict[comment.id] = [comment.body,{}]
                if comment.parent() != submission.id:
                    parent = str(comment.parent())
                    conversedict[parent][1][comment.id] = [comment.ups, comment.body]

for post_id in conversedict:
    message = conversedict[post_id][0]
    replies = conversedict[post_id][1]
    //want to print the post title here before the comments keeps iterating
    if len(replies) > 1:
        print('Original Message: {}'.format(message))
        print(35*'_')
        print('Replies:')
        for reply in replies:
            print(replies[reply])
...