跳转到主要内容

PRAW,即“Python Reddit API包装器”的缩写,是一个Python包,允许简单访问Reddit的API。

项目描述

Latest PRAW Version Supported Python Versions PyPI - Downloads - Monthly Coveralls Coverage GitHub Actions Status Contributor Covenant pre-commit OpenSSF Scorecard

PRAW,即“Python Reddit API包装器”的缩写,是一个Python包,允许简单访问Reddit的API。PRAW旨在易于使用,并在内部遵循Reddit的所有API规则。使用PRAW,您不需要在代码中引入sleep调用。为您的客户端提供一个合适的用户代理,您就设置好了。

安装

PRAW支持Python 3.7及以上版本。安装PRAW的推荐方法是使用pip

pip install praw

要安装PRAW的最新开发版本,请运行以下命令

pip install --upgrade https://github.com/praw-dev/praw/archive/master.zip

有关安装Python和pip的说明,请参阅“Python的搭便车指南” 安装指南

快速入门

假设您已经有一个用于脚本类型OAuth应用的凭证,您可以如此创建PRAW的一个实例

import praw

reddit = praw.Reddit(
    client_id="CLIENT_ID",
    client_secret="CLIENT_SECRET",
    password="PASSWORD",
    user_agent="USERAGENT",
    username="USERNAME",
)

使用reddit实例,您可以与Reddit进行交互

# Create a submission to r/test
reddit.subreddit("test").submit("Test Submission", url="https://reddit.com")

# Comment on a known submission
submission = reddit.submission(url="https://www.reddit.com/comments/5e1az9")
submission.reply("Super rad!")

# Reply to the first comment of a weekly top thread of a moderated community
submission = next(reddit.subreddit("mod").top(time_filter="week"))
submission.comments[0].reply("An automated reply")

# Output score for the first 256 items on the frontpage
for submission in reddit.front.hot(limit=256):
    print(submission.score)

# Obtain the moderator listing for r/test
for moderator in reddit.subreddit("test").moderator():
    print(moderator)

有关PRAW的更多用法示例,请参阅PRAW的文档

Discord机器人和非阻塞环境

如果您计划在异步环境中使用PRAW(例如,discord.py、asyncio),强烈建议使用Async PRAW。它是PRAW的官方异步版本,其用法与PRAW相似,具有相同的特性。

PRAW讨论和支持

对于Python新手或自认为是Python初学者的用户,请在r/learnpython子版块中提问。那里有许多乐于助人的人可以帮助您解决一般的Python和简单的PRAW相关问题。

此外,还有一些官方的地方可以提问关于PRAW的问题

r/redditdev是Reddit上提问PRAW相关问题的最佳地方。这个子版块是Reddit API相关讨论的地方,因此请给提交内容添加[PRAW]标签。请在提交内容之前先搜索一下,看看是否有人提出了类似的问题。

可以通过PRAW Slack组织进行实时聊天(如果邀请链接已过期,请创建一个问题)。

请勿通过Reddit、电子邮件或Slack直接向任何贡献者发送消息,除非他们明确表示可以这样做。我们强烈鼓励大家互相帮助解答问题。

请在GitHub上创建问题来报告错误和功能请求,在搜索以确保没有类似的问题被提出后。如果已存在类似问题,请给它点赞。当然欢迎对包含额外信息的现有问题的评论。

文档

PRAW的文档位于https://praw.readthedocs.io/

历史

2010年8月:Timothy Mellor创建了一个名为reddit_api的GitHub项目。

2011年3月:Python包reddit被注册并上传到pypi。

2011年12月:Bryce Boe接任reddit包的维护者。

2012年6月:Bryce将项目重命名为PRAW,并将仓库迁移到GitHub上新建的praw-dev组织。

2016年2月:Bryce开始着手PRAW4的开发,这是PRAW的全面重写。

许可证

PRAW的源代码(v4.0.0+)在简化版BSD许可下提供。

  • 版权©,2016,Bryce Boe

PRAW的早期版本在GPLv3下发布。

赞助商

Nuclei

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

praw-7.7.1.tar.gz (23.6 MB 查看哈希值

上传时间

构建分布

praw-7.7.1-py3-none-any.whl (191.0 kB 查看哈希值

上传时间 Python 3

支持