简体   繁体   English

导入 discord.py 时出现类型错误

[英]TypeError from importing discord.py

I just installed the discord.py rewrite branch, but attempting to use import discord or from discord.ext import commands simply results in a TypeError.我刚刚安装了 discord.py 重写分支,但尝试使用import discordfrom discord.ext import commands只会导致 TypeError。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.6/site-packages/discord/__init__.py", line 20, in <module>
    from .client import Client, AppInfo
  File "/usr/local/lib/python3.6/site-packages/discord/client.py", line 30, in <module>
    from .guild import Guild
  File "/usr/local/lib/python3.6/site-packages/discord/guild.py", line 39, in <module>
    from .channel import *
  File "/usr/local/lib/python3.6/site-packages/discord/channel.py", line 31, in <module>
    from .webhook import Webhook
  File "/usr/local/lib/python3.6/site-packages/discord/webhook.py", line 27, in <module>
    import aiohttp
  File "/usr/local/lib/python3.6/site-packages/aiohttp/__init__.py", line 6, in <module>
    from .client import *  # noqa
  File "/usr/local/lib/python3.6/site-packages/aiohttp/client.py", line 15, in <module>
    from . import connector as connector_mod
  File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 17, in <module>
    from .client_proto import ResponseHandler
  File "/usr/local/lib/python3.6/site-packages/aiohttp/client_proto.py", line 6, in <module>
    from .http import HttpResponseParser, StreamWriter
  File "/usr/local/lib/python3.6/site-packages/aiohttp/http.py", line 8, in <module>
    from .http_parser import (HttpParser, HttpRequestParser, HttpResponseParser,
  File "/usr/local/lib/python3.6/site-packages/aiohttp/http_parser.py", line 15, in <module>
    from .http_writer import HttpVersion, HttpVersion10
  File "/usr/local/lib/python3.6/site-packages/aiohttp/http_writer.py", line 304, in <module>
    class URL(yarl.URL):
  File "/usr/local/lib/python3.6/site-packages/yarl/__init__.py", line 232, in __init_subclass__
    "is forbidden".format(cls))
TypeError: Inheritance a class <class 'aiohttp.http_writer.URL'> from URL is forbidden

Although the error is technically from yarl rather than from discord.py itself, the error only occurs upon trying to import the modules.尽管错误在技术上来自 yarl 而不是来自 discord.py 本身,但错误仅在尝试导入模块时发生。

I've already tried reinstalling python as well as the discord.py rewrite branch, and if it makes any difference am running on a RPi 3 B+我已经尝试重新安装 python 以及 discord.py 重写分支,如果它有任何不同,我正在 RPi 3 B+ 上运行

pip install --upgrade aiohttp pip install --upgrade aiohttp

Install the package.安装软件包。

Your aiohttp package might be out of date. 您的aiohttp软件包可能已过期。

Try 尝试

pip install --upgrade aiohttp

I tried to install discord.py on my python 3.7 and it didn't work. 我试图在我的python 3.7上安装discord.py,但它不起作用。

I had to install python 3.6.6 to make it work, maybe you are using python 3.7, if so you should try rolling back to python 3.6.6 我必须安装python 3.6.6才能使其正常工作,也许您正在使用python 3.7,如果是这样,则应尝试回滚到python 3.6.6。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM