Home >  > 根据文件夹下的图片生成网页

根据文件夹下的图片生成网页

0

有时我们有这样一个需求:有编号为1-100的文件夹,里面有3-5张缩略图,需要将这些图片发布到网站上,每个文件夹中的图片发布到一张网页上。这时只需要将以下代码稍作修改即可。

本脚本功能为:获取本目录下的pic子目录中的所有图片(jpg,png,bmp,gif等,此处以jpg文件为例),然后生成一个image.html文件,代码如下:

#coding:utf-8
import os,sys

def showImageInHTML(imageTypes,savedir):
    files=getAllFiles(savedir+'\\pic')
    images=[f for f in files if f[f.rfind('.')+1:] in imageTypes]
    images=[item for item in images if os.path.getsize(item)>5*1024]
    images=['pic'+item[item.rfind('\\'):] for item in images]
    newfile='%s\\%s'%(savedir,'images.html')
    with open(newfile,'w') as f:
        f.write('<div>')
        for image in images:
            f.write("<img src='%s'>\n"%image)
        f.write('</div>')
    print('success,images are wrapped up in %s'%newfile)

def getAllFiles(directory):
    files=[]
    for dirpath, dirnames,filenames in os.walk(directory):
        if filenames!=[]:
            for file in filenames:
                files.append(dirpath+'\\'+file)
    files.sort(key=len)
    return files

#获取脚本文件的当前路径
def cur_file_dir():
    #获取脚本路径
    path = sys.path[0]
    #判断为脚本文件还是py2exe编译后的文件,如果是脚本文件,则返回的是脚本的目录,如果是py2exe编译后的文件,则返回的是编译后的文件路径
    if os.path.isdir(path):
        return path
    elif os.path.isfile(path):
        return os.path.dirname(path)
     
if __name__ == '__main__':
    savedir=cur_file_dir()#获取当前.py脚本文件的文件路径
    showImageInHTML(('jpg','png','gif'), savedir)#浏览所有jpg,png,gif文件

效果图如下:

本文暂无标签

发表评论

*

*