2015-06-05 75 views
0

Python 3的新手和一般編程。我正在嘗試編寫一個腳本,它將通過包含超過30,000個文件的50個文件夾遞歸,從文件中提取EXIF數據,然後繼續處理每個文件,直到達到結尾。就目前來看,我的腳本只會檢查第一個文件,然後我會在第二個文件上得到「沒有這樣的文件或目錄」。這是迄今爲止我所擁有的。python 3 - 查詢文件並遞歸到下一個文件

import os 
    import exifread 

    for folderName, subfolders, filenames in os.walk("C:\\Users\\Ken\\Desktop\\test\\temp"): 
     for f in filenames: 
      myInfo = open(f, 'rb') 
      tags = exifread.process_file(myInfo) 
      print(tags) 

我已經谷歌搜索,直到我看不到直,閱讀書籍等,但我只是沒有得到它。如果我還有頭髮,我現在已經把它撕掉了。我可能工作太久了,我只是困惑自己,但我會很感激任何幫助。

謝謝! 肯

+0

我已經從上面稍微改變了它。我添加了一行來關閉myInfo。還沒有搞清楚我在做什麼錯誤,否則。 –

回答

0

你應該使用,

myInfo = open(os.path.join(root, f), 'rb') 

istead。由於f是相對於根目錄的文件名,所以簡單地調用open(f, 'rb')將會失敗。

+0

非常感謝!我會給你一個機會,看看它是如何發展的。 –