मैं वर्तमान में अजगर में एक कलह बॉट बना रहा हूँ। मैं अपेक्षाकृत नया हूं और मुझे नहीं पता कि इस त्रुटि को कैसे ठीक किया जाए। ऐसा लगता है कि कुछ अन्य लोगों को पहले यह त्रुटि हुई है, लेकिन मुझे यकीन नहीं है कि मेरे कोड में उनके समाधान का उपयोग कैसे करें। अभी तक बॉट को केवल "हैलो!" के साथ जवाब देना चाहिए। जब उपयोगकर्ता "$ हैलो" टाइप करता है, तो मैं उम्मीद करता हूं कि यह संदेश "बॉट डिस्कॉर्ड से कनेक्ट हो गया है!", लेकिन यह त्रुटि प्राप्त करें - विशेषता त्रुटि: 'कोई नहीं टाइप' ऑब्जेक्ट में कोई विशेषता नहीं है 'स्ट्रिप'

यहाँ मेरा कोड है:

# bot.py
import os

import discord
from dotenv import load_dotenv

load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')

client = discord.Client()


@client.event
async def on_ready():
    print(f'{client.user} has connected to Discord!')


async def on_message(message):
    if message.author == client.user:
        return

    if message.content.startswith('$hello'):
        await message.channel.send('Hello!')

client.run(os.getenv('DISCORD_TOKEN'))

किसी भी समाधान की सराहना की जाएगी! धन्यवाद

संपादित करें: पूर्ण त्रुटि शामिल न करने के लिए खेद है। यही पर है।

Traceback (most recent call last):
  File "/Users/kodyneldner/DiscordBot/bot.py", line 25, in <module>
    client.run(os.getenv('DISCORD_TOKEN'))
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 723, in run
    return future.result()
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 702, in runner
    await self.start(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 665, in start
    await self.login(*args, bot=bot)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 511, in login
    await self.http.static_login(token.strip(), bot=bot)
AttributeError: 'NoneType' object has no attribute 'strip'
1
KodyN 20 सितंबर 2021, 21:58
4
स्टैक ओवरफ़्लो में आपका स्वागत है! कृपया अपने प्रश्न को संपादित करें पूर्ण त्रुटि ट्रेसबैक शामिल करें, न कि केवल अंतिम पंक्ति, जैसा कि आपकी समस्या का निदान करने में मदद करने के लिए बहुमूल्य जानकारी शामिल है
 – 
G. Anderson
20 सितंबर 2021, 22:09
1
ट्रेसबैक के बिना कहना मुश्किल है जैसा कि जी एंडरसन ने उल्लेख किया है, लेकिन एक संभावना यह है कि आप उस पर्यावरण चर को सेट नहीं करते हैं जिसका आप उपयोग कर रहे हैं os.getenv('DISCORD_TOKEN')
 – 
Gábor Pálovics
20 सितंबर 2021, 22:20

1 उत्तर

सबसे बढ़िया उत्तर

यहाँ त्रुटि के कुछ कारण और साथ ही उनके समाधान दिए गए हैं:

  1. त्रुटि टोकन द्वारा कोई भी मान सेट करने के कारण होती है, जो os.getenv('DISCORD_TOKEN') चर के मौजूद नहीं होने या मौजूद होने पर लौटाता है और इसका मान कोई नहीं है। सुनिश्चित करें कि आपकी फ़ाइल .env उसी निर्देशिका में स्थित है जिसमें py फ़ाइल है। सुनिश्चित करें कि यह .env बनाया गया है, और .txt फ़ाइल नहीं है।

  2. टोकन मान लोड करते समय विफलता के कारण यह त्रुटि उत्पन्न हो सकती है। इसे इस तरह लिखने का प्रयास करें (यह शायद आपकी मदद करेगा):

from dotenv import load_dotenv
load_dotenv('---.env')
0
Tehnorobot 21 सितंबर 2021, 17:24