尋找圖片文件夾

#! python3
# -*- coding:utf-8 -*-
# find_image_folders.py - 掃描整個硬盤,尋找"照片文件夾",
# 假設定義"照片文件夾"就是超過半數文件都是照片的任何文件夾,
# 照片必須是png或jpg文件,照片的寬度和高度必須大於500像素.

import os
from PIL import Image

for foldername, subfolders, filenames in os.walk('C:\\'): # 遍歷c盤
	pN = 0		# 記錄文件夾中是照片的文件數量
	nPN = 0		# 非照片的文件數量
	
	for filename in filenames:
		filename  = filename.lower()		# 保證擴展名大小寫都可以識別
		
		if not (filename.endswith('.png')\
		or filename.endswith('.jpg')):
			nPN += 1						# 如果不是圖片文件就其他文件數加1
			continue						# 繼續遍歷下個文件
		try:	
			im = Image.open(os.path.join(foldername, filename))	# 打開圖片文件
			width, height = im.size	
									
			if width > 500 and height > 500:	# 如果圖片的寬高都大於500,是照片
				pN += 1
			else:
				nPN += 1
		except OSError:
			continue	# 如果圖片無法識別,跳過
		
	if pN > nPN:
		print('照片文件夾: ' + os.path.join(foldername))
		
		
		

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章