teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

コードエラー説明を追加しました

2019/07/27 06:11

投稿

ousatu
ousatu

スコア12

title CHANGED
@@ -1,1 +1,1 @@
1
- python初心者です、awaitがうまく機能しません
1
+ python初心者です、discord botでawaitがうまく機能しません
body CHANGED
@@ -3,17 +3,39 @@
3
3
  数日前に初めてpythonを始めたものです。
4
4
  discord botに特定の曜日、日時になったときにメッセージを送るプログラムを作成したいのですが、エラーも出ず、頼れるかたも周りにおらず、困っています。
5
5
  エラーメッセージが出ないのですが、初心者のた安直な手段ではありますがprint分を配置することで大体のエラーが起こっている場所を特定しました。
6
-
6
+ ```
7
7
  print("send2")
8
8
  await channel.send('時間だよ')
9
9
  print("send3")
10
-
10
+ ```
11
+ ```
11
12
  print("完了")
12
13
  await SendMessage()
13
-
14
+ ```
14
15
  どうやらこの二つが機能しておらず、discordにメッセージを送れないようです。
15
16
  よろしくお願いします
16
17
 
18
+ ### コードエラー説明
19
+ 特定の曜日と時間になったときメッセージを送るBOTを作りたいと思い、today()とweekday()でその日の曜日を割り出し、曜日番号と=であれば"第1段階"と出力されます。
20
+ ```
21
+ if date.weekday()==5:
22
+ print("1段階")
23
+ ```
24
+ 次にその日の時間を割り出し、その時間と=であれば"完了"と出力し、await SendMessage()をdiscordに送るはずなのですが、メッセージが届きません。
25
+ ```
26
+ if timedate.hour==1:
27
+ print("完了")
28
+ await SendMessage()
29
+ ```
30
+ そこでSendMessage()を見てみると"send2"で止まってることがわかりました。
31
+ ```
32
+ async def SendMessage():
33
+ print("send")
34
+ channel = client.get_channel(チャンネル番号)
35
+ print("send2")
36
+ await channel.send('時間だよ')
37
+ print("send3"
38
+ ```
17
39
  # コード内容とエラー文
18
40
 
19
41
  ```python

1

トークンとチャンネル番号記載

2019/07/27 06:11

投稿

ousatu
ousatu

スコア12

title CHANGED
File without changes
body CHANGED
@@ -23,8 +23,8 @@
23
23
  import discord
24
24
  from discord.ext import tasks
25
25
 
26
- TOKEN = ""
26
+ TOKEN = "トークン番号"
27
- CHANNEL_ID =
27
+ CHANNEL_ID = チャンネル番号
28
28
  client = discord.Client()
29
29
 
30
30
 
@@ -42,7 +42,7 @@
42
42
 
43
43
  async def SendMessage():
44
44
  print("send")
45
- channel = client.get_channel()
45
+ channel = client.get_channel(チャンネル番号)
46
46
  print("send2")
47
47
  await channel.send('時間だよ')
48
48
  print("send3")
@@ -80,7 +80,7 @@
80
80
  1段階
81
81
  完了
82
82
  send
83
- send3
83
+ send2
84
84
  ready
85
85
  ```
86
86