だから、何かが変わるまで常に実行し続けるコマンドを作りたいのですが、何かが変わると、指定したチャネルにメッセージを送信しますが、エラーが発生し続けます。
import requests
from bs4 import BeautifulSoup
url = "url"
s = BeautifulSoup(requests.get(url)._content, "lxml")
canonical = s.find('link', {'rel': 'canonical'})
result = canonical['href']
async def test():
if result == url:
channel = bot.get_channel(766572517367873556)
await channel.send("checking.....\n"+ url + "\n(1) result Found")
await asyncio.sleep(10)
bot.loop.create_task(test())
エラーは次のとおりです。
File "C:path\bot.py", line 91, in patch
await channel.send("checking.....\n"+ url + "\n(1) result Found")
AttributeError: 'NoneType' object has no attribute 'send'
どんな助けもいただければ幸いです:)
ボットの準備が整う前にチャネルを使用しようとしています。行の前に次の行を追加してみてくださいchannel = bot.get_channel(766572517367873556)
。
await bot.wait_until_ready()
余談ですが、インデントを再確認してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加