Skip to main content

A legacy version of discord.py, a python wrapper for the Discord API

Project description

discord.py legacy

PyPI PyPI

discord.py is an API wrapper for Discord written in Python.

This was written to allow easier writing of bots or chat logs. Make sure to familiarise yourself with the API using the documentation.

Note: This repo is simply a backport of some breaking API changes.

Breaking Changes

The discord API is constantly changing and the wrapper API is as well. There will be no effort to keep backwards compatibility in versions before v1.0.0.

I recommend that you follow the discussion in the unofficial Discord API discord channel and update your installation periodically. I will attempt to make note of breaking changes in the API channel so make sure to subscribe to library news by typing ?sub news in the channel.

Installing

To install the library without full voice support, you can just run the following command:

python3 -m pip install -U discord.py

Otherwise to get voice support you should run the following command:

python3 -m pip install -U discord.py[voice]

To install the development version, do the following:

python3 -m pip install -U https://github.com/Rapptz/discord.py/archive/master.zip#egg=discord.py[voice]

or the more long winded from cloned source:

$ git clone https://github.com/Rapptz/discord.py
$ cd discord.py
$ python3 -m pip install -U .[voice]

Please note that on Linux installing voice you must install the following packages via your favourite package manager (e.g. apt, yum, etc) before running the above command:

  • libffi-dev (or libffi-devel on some systems)
  • python-dev (e.g. python3.5-dev for Python 3.5)

Quick Example

import discord
import asyncio

client = discord.Client()

@client.event
async def on_ready():
    print('Logged in as')
    print(client.user.name)
    print(client.user.id)
    print('------')

@client.event
async def on_message(message):
    if message.content.startswith('!test'):
        counter = 0
        tmp = await client.send_message(message.channel, 'Calculating messages...')
        async for log in client.logs_from(message.channel, limit=100):
            if log.author == message.author:
                counter += 1

        await client.edit_message(tmp, 'You have {} messages.'.format(counter))
    elif message.content.startswith('!sleep'):
        await asyncio.sleep(5)
        await client.send_message(message.channel, 'Done sleeping')

client.run('token')

Note that in Python 3.4 you use @asyncio.coroutine instead of async def and yield from instead of await.

You can find examples in the examples directory.

Requirements

  • Python 3.4.2+
  • aiohttp library
  • websockets library
  • PyNaCl library (optional, for voice only)
    • On Linux systems this requires the libffi library. You can install in debian based systems by doing sudo apt-get install libffi-dev.

Usually pip will handle these for you.

Related Projects

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

discord-py-legacy-0.16.13.tar.gz (413.2 kB view details)

Uploaded Source

Built Distribution

discord_py_legacy-0.16.13-py3-none-any.whl (446.3 kB view details)

Uploaded Python 3

File details

Details for the file discord-py-legacy-0.16.13.tar.gz.

File metadata

  • Download URL: discord-py-legacy-0.16.13.tar.gz
  • Upload date:
  • Size: 413.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.48.0 CPython/3.8.2

File hashes

Hashes for discord-py-legacy-0.16.13.tar.gz
Algorithm Hash digest
SHA256 0ea76452b92e4dd2adbfcedf700715f824835d4c8a2f641bf1a137f4cdc31d46
MD5 1065f381fc9e3762b37de5a2db9b9336
BLAKE2b-256 bb6aefb9621a9c697669a7a49c9fb4ae70f4d12de5ffbc19a0cf85fd2f033180

See more details on using hashes here.

File details

Details for the file discord_py_legacy-0.16.13-py3-none-any.whl.

File metadata

  • Download URL: discord_py_legacy-0.16.13-py3-none-any.whl
  • Upload date:
  • Size: 446.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.48.0 CPython/3.8.2

File hashes

Hashes for discord_py_legacy-0.16.13-py3-none-any.whl
Algorithm Hash digest
SHA256 d2b8e58b2fa0e795ad82e4a127ad7828ce02160f7ce45f738f6af6a231fad53b
MD5 91aeb75f08a2d7dee10808b96be95d36
BLAKE2b-256 b64bfc7dc65d66675c5e6ea57b690d3c40bf3f9d39999ac99df8caca021d6cb4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page