PRAW, acronyme de « Python Reddit API Wrapper », est un package Python qui permet un accès simple à l'API de Reddit. PRAW vise à être facile à utiliser et suit en interne toutes les règles de l'API de Reddit. Avec PRAW, il n'est pas nécessaire d'introduire des appels sleep
dans votre code. Donnez à votre client un agent utilisateur approprié et vous êtes prêt.
PRAW est pris en charge sur Python 3.8+. La méthode recommandée pour installer PRAW est via pip.
pip install praw
Pour installer la dernière version de développement de PRAW, exécutez plutôt la commande suivante :
pip install --upgrade https://github.com/praw-dev/praw/archive/master.zip
Pour obtenir des instructions sur l'installation de Python et pip, consultez les guides d'installation "Le Guide du voyageur Python".
En supposant que vous disposez déjà d'informations d'identification pour une application OAuth de type script, vous pouvez instancier une instance de PRAW comme ceci :
import praw
reddit = praw . Reddit (
client_id = "CLIENT_ID" ,
client_secret = "CLIENT_SECRET" ,
password = "PASSWORD" ,
user_agent = "USERAGENT" ,
username = "USERNAME" ,
)
Avec l'instance reddit
vous pouvez ensuite interagir avec 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 )
Veuillez consulter la documentation de PRAW pour plus d'exemples de ce que vous pouvez faire avec PRAW.
Si vous prévoyez d'utiliser PRAW dans un environnement asynchrone (par exemple, discord.py, asyncio), il est fortement recommandé d'utiliser Async PRAW. Il s'agit de la version asynchrone officielle de PRAW et son utilisation est similaire et possède les mêmes fonctionnalités que PRAW.
Pour ceux qui découvrent Python, ou qui se considéreraient autrement comme un débutant en Python, pensez à poser des questions sur le sous-reddit r/learnpython. Il y a des gens formidables là-bas qui peuvent aider avec des questions générales sur Python et de simples questions liées à PRAW.
Sinon, il existe quelques endroits officiels pour poser des questions sur PRAW :
r/redditdev est le meilleur endroit sur Reddit pour poser des questions liées à PRAW. Ce subreddit est destiné à toutes les discussions liées à l'API Reddit, veuillez donc marquer les soumissions avec [PRAW] . Veuillez d'abord effectuer une recherche sur le subreddit pour voir si quelqu'un a des questions similaires.
Le chat en temps réel peut être mené via l'organisation PRAW Slack (veuillez créer un problème si ce lien d'invitation a expiré).
Veuillez ne pas envoyer de message directement aux contributeurs via Reddit, par e-mail ou Slack, sauf indication contraire de leur part. Nous encourageons fortement chacun à aider les autres avec leurs questions.
Veuillez signaler les bogues et les demandes de fonctionnalités en tant que problèmes sur GitHub après la première recherche pour vous assurer qu'un problème similaire n'a pas déjà été signalé. Si un tel problème existe déjà, veuillez lui donner un coup de pouce. Les commentaires sur les numéros contenant des informations supplémentaires sont certainement les bienvenus.
Note
Ce projet est publié avec un code de conduite des contributeurs. En participant à ce projet, vous acceptez d'en respecter les termes.
La documentation de PRAW se trouve sur https://praw.readthedocs.io/.
Août 2010 : Timothy Mellor crée un projet github appelé reddit_api
.
Mars 2011 : le package Python reddit
a été enregistré et téléchargé sur pypi.
Décembre 2011 : Bryce Boe prend la relève en tant que responsable du package reddit
.
Juin 2012 : Bryce a renommé le projet PRAW
et le référentiel a été transféré vers la nouvelle organisation praw-dev sur GitHub.
Février 2016 : Bryce commence à travailler sur PRAW4, une réécriture complète de PRAW.
Les sources de PRAW (v4.0.0+) sont fournies sous la licence BSD simplifiée.
Les versions antérieures de PRAW étaient publiées sous GPLv3.