Python Reddit PRAW API:提取整个JSON格式

Python Reddit PRAW API:提取整个JSON格式,python,python-3.x,reddit,praw,Python,Python 3.x,Reddit,Praw,我正在使用Reddit API Praw进行情绪分析。我的代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import praw from IPython import display from nltk.sentiment.vader import SentimentIntensityAnalyzer as SIA from pprint import pprint import pandas as pd import nltk imp

我正在使用Reddit API Praw进行情绪分析。我的代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import praw
from IPython import display
from nltk.sentiment.vader import SentimentIntensityAnalyzer as SIA
from pprint import pprint
import pandas as pd
import nltk
import seaborn as sns
import datetime

sns.set(style='darkgrid', context='talk', palette='Dark2')

reddit = praw.Reddit(client_id='XXXXXXXXXXX',
                     client_secret='XXXXXXXXXXXXXXXXXXX',
                     user_agent='StackOverflow')

headlines = set()
results = []
sia = SIA()

for submission in reddit.subreddit('bitcoin').new(limit=None):
    pol_score = sia.polarity_scores(submission.title)
    pol_score['headline'] = submission.title
    readable = datetime.datetime.fromtimestamp(submission.created_utc).isoformat()
    results.append((submission.title, readable, pol_score["compound"]))
    display.clear_output()
问题A:使用此代码,我只能提取文本的标题和其他几个键。我想提取JSON格式的所有内容,但研究文档时我还没有看到这是否可行

如果我在reddit.subreddit(‘比特币’)中只调用提交,结果只显示id代码。我想排除一切,任何信息,并保存在一个JSON文件


问题B:如何提取特定日期的评论/消息?

问题a:

您只需在文章的完整url末尾添加一个
.json
,即可获得该页面的完整json,其中包括标题、作者、评论、投票和其他所有内容

使用
submission.permalink
获得文章的完整url后。您可以使用
请求
获取该页面的Json

import requests

url = submission.permalink
response = requests.get('http' + url + '.json') 
json = response.content # your Json

问题B:

不幸的是,Reddit去年某个时候从他们的搜索api中删除了时间戳搜索。这里有一个关于它的例子

除了一些小的语法差异外,最显著的变化是新系统不再支持按精确时间戳进行搜索。通过?t=参数(例如?t=天),仍然支持将结果限制在过去的小时、天、周、月和年


因此,目前没有办法使用
Praw
来实现这一点。但您可以查看提供此功能的解决方案。

解决方案

我尝试过使用PRAW,但如果有人感兴趣,我应该推荐以下链接,其中演示了如何使用pushshift API


真是一团糟!你解决了我的麻烦。我花了几个小时研究文档,找到了更多。谢谢你的推荐!