awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
praw-dev avatar

praw-dev/praw

0
View on GitHub↗
4,168 stars·496 forks·Python·BSD-2-Clause·2 vuespraw.readthedocs.io↗

Praw

PRAW est un wrapper Python pour l'API Reddit, fonctionnant comme un client API REST et un crawler de données de réseaux sociaux. Il fournit une interface programmatique pour récupérer des données, gérer le contenu d'un compte et interagir avec la plateforme.

La bibliothèque implémente un client OAuth 2.0 complet prenant en charge plusieurs flux d'autorisation, y compris les mots de passe, les jetons implicites et de rafraîchissement, ainsi que l'accès invité en lecture seule. Elle se distingue par un planificateur de requêtes conscient des limites de débit qui suit le bridage côté serveur pour éviter l'épuisement du quota API, et utilise des objets de ressources à chargement différé pour ne récupérer les données que lorsque des attributs spécifiques sont accédés.

Les capacités couvrent la gestion des communautés et des utilisateurs, le streaming de soumissions en temps réel via des générateurs, et l'extraction de fils de discussion imbriqués. L'ensemble d'outils inclut également la gestion de contenu pour créer des posts et des commentaires, ainsi que des options de configuration réseau pour les sessions personnalisées et le routage via proxy.

Features

  • Reddit API Integrations - Functions as a comprehensive Python wrapper for the Reddit API to programmatically manage content and data.
  • REST API Object-Relational Mappings - Maps JSON response keys from the REST API to Python object attributes for intuitive data interaction.
  • Community Content Submissions - Allows programmatic submission of new content and links to specific online communities.
  • Object Relation Lazy Loading - Implements proxy objects that defer fetching server data until specific resource attributes are accessed.
  • REST API Clients - Acts as a client-side implementation for interacting with RESTful services using standard HTTP methods.
  • Python API Clients - Provides a native Python library for interacting with RESTful API endpoints through object-oriented access.
  • OAuth 2.0 Authorization Flows - Provides a full implementation of standard OAuth 2.0 protocol flows to access user-specific data and services.
  • OAuth 2.0 Client Implementations - Implements a robust OAuth 2.0 client to request tokens and manage access to external server resources.
  • Multi-Grant Type Flows - Implements multiple OAuth 2.0 authorization grants including password, implicit, and refresh tokens.
  • Post and Comment Publishing - Provides capabilities for publishing text-based replies and comments within threaded discussion trees.
  • Comment Retrievals - Fetches top-level comments and nested replies for specific posts using unique identifiers.
  • Content Listing - Iterates through community posts using various sorting methods like hot, new, and top.
  • Social Feed Retrievals - Retrieves chronological content streams from specific social feeds with optional result limits.
  • Real-time Stream Monitors - Monitors communities in real-time to iterate over new posts as they are submitted.
  • Social Media Data Scraping - Enables large-scale extraction of public profiles, posts, and comments from social media for research.
  • Social Media Streams - Supports real-time streaming of new submissions and community content via persistent connections.
  • Reddit Bots - Provides the necessary tools to build automated accounts that post submissions and reply to comments autonomously.
  • User Profile Retrieval - Accesses user accounts and associated data, such as reputation scores, by username or via posts.
  • Discussion Threading - Handles the extraction and organization of nested conversation trees from community submissions.
  • OAuth Token Refreshes - Restores authorized sessions using OAuth 2.0 refresh tokens to avoid repeated manual logins.
  • Automated Moderation - Enables the creation of bots for proactive content filtering and automated community management.
  • Authorization Code Flow Initiators - Initiates the three-legged OAuth 2.0 authorization code flow using redirect URIs and token exchanges.
  • Implicit Flow Implementations - Implements the OAuth 2.0 Implicit flow where access tokens are returned directly in the redirection URI.
  • Resource Owner Password Grant Handlers - Enables authorization via the resource owner password grant flow for simple scripts without callbacks.
  • API Rate Limit Management - Implements retry logic and request pacing to adhere to external API quotas and avoid account suspension.
  • API Error Handling Patterns - Implements targeted error recovery by distinguishing between server-side failures and client-side configuration errors.
  • Generator-Based Iterators - Employs Python generators to iterate over real-time API endpoints for continuous content monitoring.
  • Community Metadata Retrieval - Provides programmatic extraction of structural information and metadata associated with specific communities.
  • Rate-Limit-Aware Backoffs - Implements client-side backoff logic that adapts to server-side throttling headers to prevent API quota exhaustion.
  • Reddit - Social news aggregation and discussion - Listed in the “Reddit - Social news aggregation and discussion” section of the List Of Python Api Wrappers awesome list.

Historique des stars

Graphique de l'historique des stars pour praw-dev/prawGraphique de l'historique des stars pour praw-dev/praw

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Praw

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Praw.
  • golang/oauth2Avatar de golang

    golang/oauth2

    5,872Voir sur GitHub↗

    This is a Go library for obtaining, refreshing, and attaching OAuth 2.0 access tokens to HTTP requests. It provides a generic token source interface with interchangeable implementations for different OAuth 2.0 grant types, and wraps the Go net/http transport layer to automatically attach access tokens as Authorization headers on outgoing requests. The library supports the authorization code flow, generating consent page URLs and exchanging authorization codes for tokens. It also implements the device authorization grant for authentication on devices without a browser, and the resource owner p

    Go
    Voir sur GitHub↗5,872
  • sferik/twitterAvatar de sferik

    sferik/twitter

    4,577Voir sur GitHub↗

    This project is a Ruby wrapper for the Twitter API, providing a programmatic interface to interact with the platform's REST and streaming endpoints. It serves as an API client for managing social content, users, and account activity. The library includes specialized tools for real-time data streaming, allowing the acquisition of live public posts, account events, and user activity. It differentiates itself with advanced media handling, such as chunked uploading for large files, and integrated traffic management to monitor rate limits and detect streaming stalls. Broadly, the project covers c

    Ruby
    Voir sur GitHub↗4,577
  • discord-jda/jdaAvatar de discord-jda

    discord-jda/JDA

    4,665Voir sur GitHub↗

    JDA is a Java wrapper for the Discord API, providing a framework for building automated agents and integrating applications with the chat platform. It functions as both a REST API client for managing server entities and a gateway client that maintains persistent WebSocket connections for real-time state updates. The library features a comprehensive voice API module for managing audio streaming, voice channel connectivity, and soundboard integration. It also includes a specialized toolkit for interactive UI design, enabling the creation of slash commands, buttons, select menus, and modal input

    Javaapiapi-wrapperbot
    Voir sur GitHub↗4,665
  • d60/twikitAvatar de d60

    d60/twikit

    4,038Voir sur GitHub↗

    Twikit is a Python library and API wrapper designed for interacting with X (Twitter). It simulates browser requests and mimics private network traffic to enable programmatic access to the platform without requiring an official API key. The project focuses on social media automation and data extraction, featuring tools for scraping user profiles, trending topics, and chronological tweet histories. It includes a session manager that handles user authentication, two-factor authentication, and cookie persistence to maintain active account access. The library's capabilities cover a broad range of

    Pythonbotclientpython
    Voir sur GitHub↗4,038
Voir les 30 alternatives à Praw→

Questions fréquentes

Que fait praw-dev/praw ?

PRAW est un wrapper Python pour l'API Reddit, fonctionnant comme un client API REST et un crawler de données de réseaux sociaux. Il fournit une interface programmatique pour récupérer des données, gérer le contenu d'un compte et interagir avec la plateforme.

Quelles sont les fonctionnalités principales de praw-dev/praw ?

Les fonctionnalités principales de praw-dev/praw sont : Reddit API Integrations, REST API Object-Relational Mappings, Community Content Submissions, Object Relation Lazy Loading, REST API Clients, Python API Clients, OAuth 2.0 Authorization Flows, OAuth 2.0 Client Implementations.

Quelles sont les alternatives open-source à praw-dev/praw ?

Les alternatives open-source à praw-dev/praw incluent : golang/oauth2 — This is a Go library for obtaining, refreshing, and attaching OAuth 2.0 access tokens to HTTP requests. It provides a… sferik/twitter — This project is a Ruby wrapper for the Twitter API, providing a programmatic interface to interact with the platform's… discord-jda/jda — JDA is a Java wrapper for the Discord API, providing a framework for building automated agents and integrating… d60/twikit — Twikit is a Python library and API wrapper designed for interacting with X (Twitter). It simulates browser requests… subzeroid/instagrapi. lepture/authlib — Authlib is a comprehensive Python framework for implementing OAuth 1.0, OAuth 2.0, and OpenID Connect clients and…