{"library":"prawcore","title":"Prawcore","description":"Prawcore is a low-level communication layer designed to be used by PRAW (Python Reddit API Wrapper) version 4 and above. It handles the underlying HTTP requests and authentication mechanisms for interacting with the Reddit API, abstracting away the complexities of direct API communication. The library is actively maintained, currently at version 3.0.2, with releases typically tied to PRAW updates or significant changes in the Reddit API.","language":"python","status":"active","last_verified":"Fri May 15","install":{"commands":["pip install prawcore"],"cli":null},"imports":["import prawcore","from prawcore import TrustedAuthenticator","from prawcore import Requestor","from prawcore import ReadOnlyAuthorizer","from prawcore import session"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nimport pprint\nimport prawcore\n\n# Ensure these environment variables are set before running:\n# PRAWCORE_CLIENT_ID, PRAWCORE_CLIENT_SECRET\n\nclient_id = os.environ.get('PRAWCORE_CLIENT_ID', '')\nclient_secret = os.environ.get('PRAWCORE_CLIENT_SECRET', '')\nuser_agent = \"YOUR_VALID_USER_AGENT\"\n\nif not client_id or not client_secret:\n    print(\"Error: PRAWCORE_CLIENT_ID and PRAWCORE_CLIENT_SECRET environment variables must be set.\")\n    exit(1)\n\nauthenticator = prawcore.TrustedAuthenticator(\n    prawcore.Requestor(user_agent),\n    client_id,\n    client_secret,\n)\nauthorizer = prawcore.ReadOnlyAuthorizer(authenticator)\nauthorizer.refresh()\n\nwith prawcore.session(authorizer) as session:\n    try:\n        response = session.request(\"GET\", \"/api/v1/user/bboe/trophies\")\n        pprint.pprint(response)\n    except prawcore.exceptions.ResponseException as e:\n        print(f\"API Error: {e.response.status_code} - {e.response.text}\")\n    except prawcore.exceptions.RequestException as e:\n        print(f\"Request Error: {e}\")\n","lang":"python","description":"This example demonstrates how to use prawcore to fetch a user's trophies. It assumes you have created a Reddit script application and set `PRAWCORE_CLIENT_ID` and `PRAWCORE_CLIENT_SECRET` environment variables. Replace 'YOUR_VALID_USER_AGENT' with a unique and descriptive user agent string.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"3.0.2","pypi_latest":"3.0.2","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.1,"avg_import_s":0.59,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.58,"mem_mb":10.6,"disk_size":"21.3M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.1,"import_time_s":0.4,"mem_mb":10.6,"disk_size":"22M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.74,"mem_mb":11.8,"disk_size":"23.4M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.1,"import_time_s":0.64,"mem_mb":11.8,"disk_size":"24M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.66,"mem_mb":13.3,"disk_size":"15.1M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.67,"mem_mb":13.3,"disk_size":"16M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.65,"mem_mb":13.7,"disk_size":"14.9M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.64,"mem_mb":13.7,"disk_size":"15M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.5,"mem_mb":10.2,"disk_size":"20.5M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"prawcore","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.5,"import_time_s":0.46,"mem_mb":10.2,"disk_size":"21M"}]}}