import
datetime
import
os
import
time
import
pygame
from
pygame
import
mixer
from
pygame.
locals
import
USEREVENT
STOPEVENT
=
USEREVENT
+
1
#音乐停止事件
h
=
9
# 时间
m
=
26
# 分钟
play_long
=
60
*
10
# 播放时长
def
play(start):
paths
=
os.listdir(
'.'
)
#当前目录下所有文件
def
ismp3(path):
return
path.endswith(
".mp3"
)
paths
=
list
(
filter
(ismp3, paths))
#保留mp3文件
if
len
(paths) >
0
:
cur
=
0
mixer.init()
pygame.init()
mixer.music.set_endevent(STOPEVENT)
#设置音乐停止事件
mixer.music.load(paths[cur].encode(
"utf-8"
))
#加载,支持中文文件名
mixer.music.play()
#播放
#当超过播放时长后,停止播放
while
(datetime.datetime.now()
-
start).seconds < play_long:
time.sleep(
1
)
#1秒监听一次事件
event
=
pygame.event.poll()
if
event.
type
=
=
STOPEVENT:
cur
+
=
1
if
cur !
=
len
(paths):
mixer.music.load(paths[cur].encode(
"utf-8"
))
#支持中文文件名
mixer.music.play()
else
:
break
;
pygame.quit()
def
detect():
while
True
:
now
=
datetime.datetime.now()
if
now.hour
=
=
h
and
now.minute
=
=
m:
play(now)
else
:
time.sleep(
1
)
if
__name__
=
=
'__main__'
:
detect()