mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-05-14 09:50:03 +00:00
Update README
This commit is contained in:
parent
61f63a9346
commit
36ac1720d8
96
README.rst
96
README.rst
@ -1,104 +1,114 @@
|
|||||||
discord.py
|
discord.py
|
||||||
==========
|
==========
|
||||||
|
|
||||||
|
.. image:: https://discordapp.com/api/guilds/336642139381301249/embed.png
|
||||||
|
:target: https://discord.gg/r3sSKJJ
|
||||||
|
:alt: Discord server invite
|
||||||
.. image:: https://img.shields.io/pypi/v/discord.py.svg
|
.. image:: https://img.shields.io/pypi/v/discord.py.svg
|
||||||
:target: https://pypi.python.org/pypi/discord.py
|
:target: https://pypi.python.org/pypi/discord.py
|
||||||
|
:alt: PyPI version info
|
||||||
.. image:: https://img.shields.io/pypi/pyversions/discord.py.svg
|
.. image:: https://img.shields.io/pypi/pyversions/discord.py.svg
|
||||||
:target: https://pypi.python.org/pypi/discord.py
|
:target: https://pypi.python.org/pypi/discord.py
|
||||||
|
:alt: PyPI supported Python versions
|
||||||
|
|
||||||
discord.py is an API wrapper for Discord written in Python.
|
A modern, easy to use, feature-rich, and async ready 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 <http://discordpy.rtfd.org/en/latest>`__.
|
Key Features
|
||||||
|
-------------
|
||||||
|
|
||||||
Breaking Changes
|
- Modern Pythonic API using ``async`` and ``await``.
|
||||||
----------------
|
- Proper rate limit handling.
|
||||||
|
- 100% coverage of the supported Discord API.
|
||||||
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``.
|
- Optimised in both speed and memory.
|
||||||
|
|
||||||
I recommend joining either the `official discord.py server <https://discord.gg/r3sSKJJ>`_ or the `Discord API server <https://discord.gg/discord-api>`_ for help and discussion about the library.
|
|
||||||
|
|
||||||
Installing
|
Installing
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
**Python 3.5.3 or higher is required**
|
||||||
|
|
||||||
To install the library without full voice support, you can just run the following command:
|
To install the library without full voice support, you can just run the following command:
|
||||||
|
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
|
# Linux/OS X
|
||||||
python3 -m pip install -U discord.py
|
python3 -m pip install -U discord.py
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
py -3 -m pip install -U discord.py
|
||||||
|
|
||||||
Otherwise to get voice support you should run the following command:
|
Otherwise to get voice support you should run the following command:
|
||||||
|
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
|
# Linux/OS X
|
||||||
python3 -m pip install -U discord.py[voice]
|
python3 -m pip install -U discord.py[voice]
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
py -3 -m pip install -U discord.py[voice]
|
||||||
|
|
||||||
|
|
||||||
To install the development version, do the following:
|
To install the development version, do the following:
|
||||||
|
|
||||||
.. code:: sh
|
|
||||||
|
|
||||||
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:
|
|
||||||
|
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
$ git clone https://github.com/Rapptz/discord.py
|
$ git clone https://github.com/Rapptz/discord.py
|
||||||
$ cd discord.py
|
$ cd discord.py
|
||||||
$ python3 -m pip install -U .[voice]
|
$ 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:
|
|
||||||
|
Optional Packages
|
||||||
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
* PyNaCl (for voice support)
|
||||||
|
|
||||||
|
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 commands:
|
||||||
|
|
||||||
* libffi-dev (or ``libffi-devel`` on some systems)
|
* libffi-dev (or ``libffi-devel`` on some systems)
|
||||||
* python-dev (e.g. ``python3.5-dev`` for Python 3.5)
|
* python-dev (e.g. ``python3.6-dev`` for Python 3.6)
|
||||||
|
|
||||||
Quick Example
|
Quick Example
|
||||||
-------------
|
--------------
|
||||||
|
|
||||||
.. code:: py
|
.. code:: py
|
||||||
|
|
||||||
import discord
|
import discord
|
||||||
import asyncio
|
|
||||||
|
|
||||||
class MyClient(discord.Client):
|
class MyClient(discord.Client):
|
||||||
async def on_ready(self):
|
async def on_ready(self):
|
||||||
print('Logged in as')
|
print('Logged on as', self.user)
|
||||||
print(self.user.name)
|
|
||||||
print(self.user.id)
|
|
||||||
print('------')
|
|
||||||
|
|
||||||
async def on_message(self, message):
|
async def on_message(self, message):
|
||||||
# don't respond to ourselves
|
# don't respond to ourselves
|
||||||
if message.author == self.user:
|
if message.author == self.user:
|
||||||
return
|
return
|
||||||
if message.content.startswith('!test'):
|
|
||||||
counter = 0
|
|
||||||
tmp = await message.channel.send('Calculating messages...')
|
|
||||||
async for msg in message.channel.history(limit=100):
|
|
||||||
if msg.author == message.author:
|
|
||||||
counter += 1
|
|
||||||
|
|
||||||
await tmp.edit(content='You have {} messages.'.format(counter))
|
if message.content == 'ping':
|
||||||
elif message.content.startswith('!sleep'):
|
await message.channel.send('pong')
|
||||||
with message.channel.typing():
|
|
||||||
await asyncio.sleep(5.0)
|
|
||||||
await message.channel.send('Done sleeping.')
|
|
||||||
|
|
||||||
client = MyClient()
|
client = MyClient()
|
||||||
client.run('token')
|
client.run('token')
|
||||||
|
|
||||||
You can find examples in the examples directory.
|
Bot Example
|
||||||
|
~~~~~~~~~~~~~
|
||||||
|
|
||||||
Requirements
|
.. code:: py
|
||||||
------------
|
|
||||||
|
|
||||||
* Python 3.5.3+
|
import discord
|
||||||
* ``aiohttp`` library
|
from discord.ext import commands
|
||||||
* ``websockets`` library
|
|
||||||
* ``PyNaCl`` library (optional, for voice only)
|
|
||||||
|
|
||||||
- On Linux systems this requires the ``libffi`` library. You can install in
|
bot = commands.Bot(command_prefix='>')
|
||||||
debian based systems by doing ``sudo apt-get install libffi-dev``.
|
|
||||||
|
|
||||||
Usually ``pip`` will handle these for you.
|
@bot.command()
|
||||||
|
async def ping(ctx):
|
||||||
|
await ctx.send('pong')
|
||||||
|
|
||||||
|
bot.run('token')
|
||||||
|
|
||||||
|
You can find more examples in the examples directory.
|
||||||
|
|
||||||
|
Links
|
||||||
|
------
|
||||||
|
|
||||||
|
- `Documentation <https://discordpy.readthedocs.io/en/latest/index.html>`_
|
||||||
|
- `Official Discord Server <https://discord.gg/r3sSKJJ>`_
|
||||||
|
- `Discord API <https://discord.gg/discord-api>`_
|
||||||
|
Loading…
x
Reference in New Issue
Block a user