个性化阅读
专注于IT技术分析

Python–使用PRAW制作Reddit机器人示例

Reddit是一个基于人们兴趣的社区网络。这些社区中的每一个都称为subreddit。用户可以订阅多个子reddit, 以对其进行发布, 评论和交互。

Reddit机器人可以自动响应用户的帖子或以一定的时间间隔自动发布内容。这可能取决于用户发布的内容。它可以由某些关键短语触发, 并且还取决于其内容的各种子项。

为了实现Reddit机器人, 我们将使用Python Reddit API包装器(PRAW)。它允许我们登录Reddit API以直接与网站的后端进行交互。有关此库的更多信息, 请参见此处–

PRAW – Python Reddit API包装器

我们的机器人会针对给定的单词说出相似的单词。我们将使用附魔模块的建议()查找相似单词的方法。

算法:

  1. 导入模块praw和附魔。
  2. 创建具有有效参数的授权Reddit实例。
  3. 选择要使用机器人的子目录。
  4. 选择一个词来触发该机器人在该subreddit中。
  5. 检查subreddit中的每个注释以获取触发短语。
  6. 找到触发短语后, 从注释中提取单词, 然后使用附魔模块。
  7. 用类似的词回复评论。
# import the modules
import praw
import enchant
  
# initialize with appropriate values
client_id = ""
client_secret = ""
username = ""
password = ""
user_agent = ""
  
# creating an authorized reddit instance
reddit = praw.Reddit(client_id = client_id, client_secret = client_secret, username = username, password = password, user_agent = user_agent) 
  
# the subreddit where the bot is to be live on
target_sub = "GRE"
subreddit = reddit.subreddit(target_sub)
  
# phrase to trigger the bot
trigger_phrase = "! GfGBot"
  
# enchant dictionary
d = enchant. Dict ( "en_US" )
  
# check every comment in the subreddit
for comment in subreddit.stream.comments():
  
     # check the trigger_phrase in each comment
     if trigger_phrase in comment.body:
  
         # extract the word from the comment
         word = comment.body.replace(trigger_phrase, "")
  
         # initialize the reply text
         reply_text = ""
          
         # find the similar words
         similar_words = d.suggest(word)
         for similar in similar_words:
             reply_text + = similar + " "
  
         # comment the similar words
         comment.reply(reply_text)

触发机器人:

Python –使用PRAW制作Reddit机器人1

机器人用类似的话回答:

Python –使用PRAW制作Reddit机器人2

首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。


赞(0) 打赏
未经允许不得转载:srcmini » Python–使用PRAW制作Reddit机器人示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏