尝试从 praw 的 2 个 subreddits 创建交替的帖子列表
Trying to create alternating list of posts from 2 subreddits in praw
我正在尝试从两个不同的 subreddits 获取帖子,并创建一个在 subreddits 之间交替的当天最热门帖子的列表(从投票最多到投票最少的顺序)。这是我的代码:
import praw
user = "username"
passWord = "notmyactualpassword"
clientID = "id"
clientSecret = "secret"
userAgent = "useragent"
reddit = praw.Reddit(client_id=clientID,
client_secret=clientSecret,
user_agent=userAgent,
username = user,
password = passWord)
submissions = []
if submissions == []:
test = reddit.subreddit("test", fetch = True)
testPosts = test.top("day", limit = 50)
redditdev = reddit.subreddit("redditdev", fetch = True)
redditdevPosts = redditdev.top("day", limit = 50)
switch = False
if switch == False:
submissions.append(testPosts[0])
testPosts.pop()
switch = True
else:
submissions.append(redditdevPosts[0])
testPosts.pop()
switch = False
else:
selectedPost = submissions[0]
name = selectedPost.title
url = selectedPost.url
当我运行这个时,它给我这个错误:
抱歉没有将错误复制和粘贴,我在我的笔记本电脑上,我还没有弄清楚如何让它让我从命令提示符复制。
此外,如果我在我的实际代码中使用了 async praw,那么上面的内容基本上与我正在尝试做的相同。
基本上我想知道 testPosts 和 redditdevPosts 是否是列表对象,里面有 50 个提交对象,如果是,那为什么我的代码不工作,如果不是,我怎样才能得到它们成为?
这将根据您希望首先拥有的 subreddit 为您提供提交中的交替帖子列表。
testPosts = list(reddit.subreddit("test").top("day", limit=50))
redditdevPosts = list(reddit.subreddit("redditdev").top("day", limit=50))
switch = False
if not switch:
for c,item in enumerate(testPosts):
submissions.append(item)
submissions.append(redditdevPosts[c])
else:
for c,item in enumerate(redditdevPosts):
submissions.append(item)
submissions.append(testPosts[c])
我正在尝试从两个不同的 subreddits 获取帖子,并创建一个在 subreddits 之间交替的当天最热门帖子的列表(从投票最多到投票最少的顺序)。这是我的代码:
import praw
user = "username"
passWord = "notmyactualpassword"
clientID = "id"
clientSecret = "secret"
userAgent = "useragent"
reddit = praw.Reddit(client_id=clientID,
client_secret=clientSecret,
user_agent=userAgent,
username = user,
password = passWord)
submissions = []
if submissions == []:
test = reddit.subreddit("test", fetch = True)
testPosts = test.top("day", limit = 50)
redditdev = reddit.subreddit("redditdev", fetch = True)
redditdevPosts = redditdev.top("day", limit = 50)
switch = False
if switch == False:
submissions.append(testPosts[0])
testPosts.pop()
switch = True
else:
submissions.append(redditdevPosts[0])
testPosts.pop()
switch = False
else:
selectedPost = submissions[0]
name = selectedPost.title
url = selectedPost.url
当我运行这个时,它给我这个错误:
抱歉没有将错误复制和粘贴,我在我的笔记本电脑上,我还没有弄清楚如何让它让我从命令提示符复制。
此外,如果我在我的实际代码中使用了 async praw,那么上面的内容基本上与我正在尝试做的相同。
基本上我想知道 testPosts 和 redditdevPosts 是否是列表对象,里面有 50 个提交对象,如果是,那为什么我的代码不工作,如果不是,我怎样才能得到它们成为?
这将根据您希望首先拥有的 subreddit 为您提供提交中的交替帖子列表。
testPosts = list(reddit.subreddit("test").top("day", limit=50))
redditdevPosts = list(reddit.subreddit("redditdev").top("day", limit=50))
switch = False
if not switch:
for c,item in enumerate(testPosts):
submissions.append(item)
submissions.append(redditdevPosts[c])
else:
for c,item in enumerate(redditdevPosts):
submissions.append(item)
submissions.append(testPosts[c])