Python 视频文件的分割和合并

发布时间:2019-08-29 07:34:28编辑:auto阅读(1877)

    import os;

    import time;

    os.system('start "wmplayer.exe", "F:\\abc.mp4"');


    --分割代码 start----

    import sys,os;

    kilobytes = 1024;

    megabytes = kilobytes*1024;

    chunksize = int(10*megabytes);


    def split(fromfile,todir,chunksize=chunksize):

    if not os.path.exists(todir):

    os.mkdir(todir) 

    else:

    for fname in os.listdir(todir):

    os.remove(os.path.join(todir,fname))


    partnum = 0

    inputfile = open(fromfile,"rb")

    while True:

    chunk = inputfile.read(chunksize)

    if not chunk:

    inputfile.close()

    break

    partnum += 1

    filename = os.path.join(todir, ("abc%04d"%partnum))

    print("我要显示的文件名称:"+filename)

    fileobj = open(filename, "wb")

    fileobj.write(chunk)

    fileobj.close()

    return partnum



    if __name__=="__main__":

    fromfile = "F:\\abc.mp4"

    todir = "F:\\split_parts\\"

    #chunksize = int(5000000)

    absfrom,absto = map(os.path.abspath,[fromfile,todir])

    print('分割:',absfrom,'to',absto,'by',chunksize)


    try:

    parts = split(fromfile,todir,chunksize)

    except:

    print('Error during split:')

    print(sys.exc_info()[0],sys.exc_info()[1])

    else:

    print('分割完成:',parts,'parts are in',absto)


    --合并代码 start----

    import sys,os

    def joinfile(fromdir,filename,todir):

    if not os.path.exists(todir):

    os.mkdir(todir)

    if not os.path.exists(fromdir):

    print("合拼文件路径错误!")


    outfile = open(os.path.join(todir,filename),"wb")

    files = os.listdir(fromdir)

    files.sort()

    for file in files:

    filepath = os.path.join(fromdir,file)

    infile = open(filepath,"rb")

    data = infile.read()

    outfile.write(data)

    infile.close()


    outfile.close()



    if __name__=="__main__":

    fromdir = "F:\\split_parts\\"

    todir = "F:\\split_parts\\"

    filename = "abc.mp4"


    try:

    joinfile(fromdir,filename,todir)

    except:

    print("错误的连接文件:")

    print(sys.exc_info()[0],sys.exc_info()[1])


关键字