最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python實(shí)現(xiàn)照片按照日期自動(dòng)分類(lèi)的操作指南

 更新時(shí)間:2025年08月17日 10:35:37   作者:碼無(wú)止盡  
最近準(zhǔn)備把近幾年手機(jī)里面存儲(chǔ)的照片按年份分類(lèi)存儲(chǔ)到硬盤(pán)里面,不知不覺(jué)累積了4000多張照片,人工一張張分類(lèi)實(shí)在是太費(fèi)時(shí)間、也容易出錯(cuò),所以本文給大家介紹了使用Python實(shí)現(xiàn)照片按照日期自動(dòng)分類(lèi)的操作指南,需要的朋友可以參考下

各位小伙伴們,別看這些張張圖片,它們也是有生日的哦!而今天,我們就要教你一招,讓Python幫助圖片自動(dòng)按照日期分類(lèi),讓這些鏡頭下的瞬間肆意自由,分門(mén)別類(lèi)、慢慢成長(zhǎng)!

準(zhǔn)備工作

首先,需要攜帶一顆善良而充滿(mǎn)創(chuàng)意的心,以及一顆熱愛(ài)技術(shù)的腦袋。另外,Python的os模塊、PIL庫(kù)(Python Imaging Library)、以及exifread庫(kù)也會(huì)是我們這次冒險(xiǎn)的得力工具!

沒(méi)有安裝PIL和exifread庫(kù)的,記得先安裝一下哦:

pip install exifread
pip install Pillow

代碼實(shí)現(xiàn)

from PIL import Image
import os
import exifread
from datetime import datetime
 
def get_image_date_taken(image_path):
    with open(image_path, 'rb') as image_file:
        tags = exifread.process_file(image_file)
        date_taken = tags.get('EXIF DateTimeOriginal')
        if date_taken:
            return datetime.strptime(str(date_taken), '%Y:%m:%d %H:%M:%S')
        else:
            return None
 
def classify_images_by_date(input_folder, output_folder):
    os.makedirs(output_folder, exist_ok=True)
    for filename in os.listdir(input_folder):
        input_path = os.path.join(input_folder, filename)
        if os.path.isfile(input_path):
            date_taken = get_image_date_taken(input_path)
            if date_taken:
                date_folder = date_taken.strftime('%Y-%m-%d')
                date_folder_path = os.path.join(output_folder, date_folder)
                os.makedirs(date_folder_path, exist_ok=True)
                output_path = os.path.join(date_folder_path, filename)
                os.replace(input_path, output_path)
# 測(cè)試
classify_images_by_date(
    'C:/Users/olive/Desktop/待分類(lèi)的圖片',
    'C:/Users/olive/Desktop/分類(lèi)后的圖片')

代碼解析

這段代碼不僅涉及到PIL庫(kù)的應(yīng)用、文件處理,更使用了exifread庫(kù)來(lái)獲取圖片的拍攝日期信息。Python就好像是一位時(shí)間旅行者,為圖片鐫刻上屬于它們自己的生日!

現(xiàn)在讓我來(lái)詳細(xì)解析一下:

1.首先,定義了一個(gè)名為get_image_date_taken的函數(shù),用于獲取圖片的拍攝日期。它通過(guò)讀取圖片的exif信息(EXIF是存儲(chǔ)在數(shù)碼照片文件中的附加信息,包括拍攝日期等),獲取圖片的拍攝日期,并返回一個(gè)datetime對(duì)象。

2.然后,定義了一個(gè)名為classify_images_by_date的函數(shù),用于分類(lèi)圖片并保存到對(duì)應(yīng)日期的文件夾中。該函數(shù)接收兩個(gè)參數(shù):input_folder表示輸入圖片存放的文件夾路徑,output_folder表示分類(lèi)后圖片保存的文件夾路徑。

3.在classify_images_by_date函數(shù)中,首先使用os.makedirs(output_folder,exist_ok=True)創(chuàng)建輸出文件夾,如果文件夾已存在則不會(huì)報(bào)錯(cuò)。

4.然后,遍歷輸入文件夾中的每張圖片。對(duì)于每張圖片,獲取圖片的完整路徑input_path,并進(jìn)行判斷是否為文件。

5.如果是文件,則調(diào)用get_image_date_taken函數(shù)獲取圖片的拍攝日期date_taken。如果成功獲取到日期,就根據(jù)日期創(chuàng)建對(duì)應(yīng)的文件夾,并將圖片移動(dòng)到該文件夾中。

6.最后,利用os.replace方法將圖片從原路徑移動(dòng)到新的分類(lèi)路徑,并完成分類(lèi)操作。

激動(dòng)人心的測(cè)試

跟著小編的腳步,將你的圖片帶入時(shí)間的長(zhǎng)河吧!只需要將輸入文件夾路徑和輸出文件夾路徑傳入classify_images_by_date函數(shù),Python就能為你將圖片按照日期自動(dòng)分類(lèi),慢慢成長(zhǎng)。

接下來(lái),我們要開(kāi)始測(cè)試代碼了,首先,我們準(zhǔn)備一些圖片,放在一個(gè)文件夾下:

我們會(huì)發(fā)現(xiàn),前面3張不是我們自己拍的照片(濫竽充數(shù)的,看看能不能蒙混過(guò)關(guān)??),后面的照片,文件名也是有點(diǎn)亂,甚至有些都看不出是什么時(shí)候拍的。

這里再多啰嗦兩句,我們深究一下圖片的日期究竟是被記錄在了哪里:

我們隨便選擇一張照片,對(duì)它右擊,選擇屬性,就跳出了如下所示的一個(gè)彈框。然后,我們點(diǎn)詳細(xì)信息這個(gè)選項(xiàng)卡,然后在屬性中,找到來(lái)源下的拍攝日期,它的值,就是我們實(shí)際拍攝照片的時(shí)間。

我們?cè)倏匆幌?,不是我們自己拍攝的照片,有沒(méi)有日期呢:

我們看到,這張圖片的拍攝日期是空白的。

好了,接下來(lái)要執(zhí)行我們的代碼了,激動(dòng)人心的時(shí)刻終于來(lái)了。

首先,還是要改一下測(cè)試的那行代碼,再上面的代碼中的最后一行:

# 測(cè)試
classify_images_by_date(
    'C:/Users/olive/Desktop/待分類(lèi)的圖片',
    'C:/Users/olive/Desktop/分類(lèi)后的圖片')

注意,兩個(gè)文件夾的路徑要改成你自己的哦!

好了,接下來(lái)就運(yùn)行一下吧。

很快,幾乎沒(méi)有等待,瞬間完成!

我們看到,此時(shí)在我們的桌面上就多了一個(gè)【分類(lèi)后的圖片】的文件夾:

非常棒,果然出現(xiàn)了按日期歸類(lèi)的文件夾,我們點(diǎn)開(kāi)看一下,照片是不是歸類(lèi)進(jìn)來(lái)了:

ok,歸類(lèi)成功!

最后,我們?cè)倏聪隆敬诸?lèi)的圖片】的那個(gè)文件夾:

果然,不是我們拍的照片,呆在原地了,在我們機(jī)智的Python面前,所有的妖精無(wú)處遁形,哈哈!

結(jié)語(yǔ)

這篇文章讓我們一起見(jiàn)證了圖片的成長(zhǎng),讓這些瞬間在時(shí)間的長(zhǎng)河里慢慢自由生長(zhǎng)、分門(mén)別類(lèi)。希望這個(gè)教程能為你的圖片分類(lèi)之旅增添一絲樂(lè)趣和意義!

在未來(lái)的某一天,你回過(guò)頭來(lái),會(huì)發(fā)現(xiàn)這些個(gè)個(gè)鏡頭下的瞬間,其實(shí)也在悄悄地留下了生日。

到此這篇關(guān)于使用Python實(shí)現(xiàn)照片按照日期自動(dòng)分類(lèi)的操作指南的文章就介紹到這了,更多相關(guān)Python照片按日期自動(dòng)分類(lèi)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

什邡市| 黄山市| 远安县| 巫山县| 金川县| 衡阳县| 苗栗市| 砀山县| 云阳县| 徐州市| 洛阳市| 临夏县| 长泰县| 巴楚县| 汤原县| 景德镇市| 临颍县| 静海县| 洮南市| 水富县| 交口县| 万全县| 宁海县| 安福县| 陈巴尔虎旗| 蕉岭县| 营口市| 桐梓县| 新泰市| 龙江县| 辽阳市| 乌兰县| 慈利县| 静安区| 河南省| 密山市| 南澳县| 和龙市| 泉州市| 杂多县| 通城县|