Получить последний записанный файл из серии подпапок

Я пробовал это решение:
Как получить последний файл в папке с помощью python

Код, который я пробовал:

import glob
import os

list_of_files = glob.glob('/path/to/folder/**/*.csv') 
latest_file = max(list_of_files, key=os.path.getctime)
print (latest_file)

Я получил вывод относительно журнала Windows с меткой времени для файлов.

Но я вел отдельный журнал для записи файлов в соответствующую подпапку.

Когда я открыл журнал, я увидел, что последний обновленный файл не соответствует указанному в коде Python.

Я был шокирован, так как весь мой процесс зависел от последнего записанного файла. Пожалуйста, дайте мне знать, что я могу сделать, чтобы получить последний обновленный файл через Python

Я хочу прочитать файл, который обновляется последним, но, поскольку Windows не отдает приоритет обновлению файла «Последнее изменение», я не вижу другого выхода.

Есть ли у кого-нибудь другой способ выследить его?

Вам нужно os.path.getmtime (время модификации) вместо getctime (время создания)?

Jon Clements 22.05.2019 14:49

О... это то, что я думаю, является решением проблемы... :) :P

Jaffer Wilson 22.05.2019 14:52
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
2
153
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

os.path.getctime — это время файла творчество — кажется, вам нужно os.path.getmtime, которое является временем модификация файла, поэтому попробуйте:

latest_file = max(list_of_files, key=os.path.getmtime)

и посмотрите, делает ли это то, что вы хотите.

Спасибо за ваш ответ. Я проголосовал за вас. Но, пожалуйста, простите меня, так как на этот раз я хочу дать шанс новому участнику. Я хочу принять ответ Тома как поддержку.

Jaffer Wilson 23.05.2019 06:37
Ответ принят как подходящий

В Linux os.path.getctime() возвращает время последнего изменения, а в Windows возвращает время создания. Вам нужно использовать os.path.getmtime, чтобы получить измененное время в окнах.

import glob
import os

list_of_files = glob.glob('/path/to/folder/**/*.csv') 
latest_file = max(list_of_files, key=os.path.getmtime)
print (latest_file)

Этот код должен работать для вас.

Другие вопросы по теме