0

this python script show folder image in html viewer in browser

but the multiple extension I can not get output in numerical order

import os
import glob
import re

html = ""
strPath = os.path.realpath(__file__)
print( f"Full Path    :{strPath}" )
nmFolders = strPath.split( os.path.sep )
print( f"Folder Name  :{nmFolders[-2]}" )
for X in {nmFolders[-2]}:
    for Y in {'*.webp', '*.png', '*.jpg', '*.bmp', '*.jpeg', '*.gif'}:

         for file in sorted(glob.glob( os.path.join(Y) ),key=len):
                html += f"<div align='center'><img src ='{os.path.realpath(file)}'/>"
                html += f''' \n '''

for X in {nmFolders[-2]}:


    with open(f"{X}.html","w", encoding="utf-8") as outputfile:
        outputfile.write(html)
   
os.startfile(f"{X}.html")

html output

<div align='center'><img src ='D:\program files\image\4.gif'/> 
 <div align='center'><img src ='D:\program files\image\5.gif'/> 
 <div align='center'><img src ='D:\program files\image\1.png'/> 
 <div align='center'><img src ='D:\program files\image\8.png'/> 
 <div align='center'><img src ='D:\program files\image\6.webp'/> 
 <div align='center'><img src ='D:\program files\image\7.jpeg'/> 
 <div align='center'><img src ='D:\program files\image\3.bmp'/> 
 <div align='center'><img src ='D:\program files\image\9.bmp'/> 
 <div align='center'><img src ='D:\program files\image\2.jpg'/> 
 <div align='center'><img src ='D:\program files\image\10.jpg'/> 
 

I want output :

 <div align='center'><img src ='D:\program files\image\1.png'/>
 <div align='center'><img src ='D:\program files\image\2.jpg'/> 
 <div align='center'><img src ='D:\program files\image\3.bmp'/> 
 <div align='center'><img src ='D:\program files\image\4.gif'/> 
 <div align='center'><img src ='D:\program files\image\5.gif'/> 
 <div align='center'><img src ='D:\program files\image\6.webp'> 
 <div align='center'><img src ='D:\program files\image\7.jpeg'/> 
 <div align='center'><img src ='D:\program files\image\8.png'/>  
 <div align='center'><img src ='D:\program files\image\9.bmp'/> 
 <div align='center'><img src ='D:\program files\image\10.jpg'/> 
 

Because of the multiple extension I can not get output in numerical order.

key need to change.

0 Answers0