# a game
import os,re
global list_a
wjlb =input("输入文件地址")
os.chdir(wjlb)
wjdz = os.path.join(os.path.dirname(os.getcwd()),os.path.split(os.getcwd())[1])wjdz = f"{wjdz}.m3u8"
#文件合并后将在 文件父目录 生成的 播放器地址, 生成完毕后直接用 浏览器 或者用播放器打开就能用了
a = """#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0"""
c = "\n#EXTINF:9.000000,\n" #这个是时间步长 9.000000
b = "\n#EXT-X-ENDLIST"
e = "file://" #abcd都是M3U8的格式
#获取 文件内的所有文件序列
def hqlist(wjlb):
os.chdir(wjlb)
list_a = os.listdir()
kk = pxlist(list_a) #进行排序文件
list_a = pj(wjlb,kk) #保存原地址,和新地址,方便取用
return list_a
#把获取的文件 按需排列,这里观察原路径得知 最后的数字才是有用的
def pxlist(lis):
newlist = [] #存储新序列的表格
list1 = [] #老文件
for i in lis: #取出表格
k = []
j = re.findall("\d+",i)
if bool(j):
k.append(int(j[-1])) #[b]这个“-1”是取最后一个数字 这个看他的排列顺序没种不一样的[/b]
k.append(i)
newlist.append(k)
newlist = sorted(newlist,key = lambda newlist:newlist[0])
for i in newlist:
list1.append(i[1])
return list1
#文件读写
def loadwj(read_a,write_a):
with open(read_a, "rb") as f:
with open(write_a,"wb") as g:
g.write(f.read())
#文件地址的合并 主要m3u8的文件写入
def pj(a,b):
d = []
for i in b:
c = os.path.join(a,i)
d.append(c)
return d
def main():
with open (wjdz,"w") as f:
f.write(a)
for i in hqlist(wjlb):
f.write(c)
f.write(e)
f.write(i)
f.write(b)
main()