Как извлечь дату из .txt-файла в Python?

Код извлечения даты из .txt-файла в Python, он ищет все даты в файле после небольшого апгрейда

import datefinder
def find_date(filepath):

fp = open(filepath,’r’).read()
matches = datefinder.find_dates(fp)
for match in matches:
print match

filepath = «C:\Users\pubali.bhaduri\PycharmProjects\Mail\Mail1.txt»find_date(filepath)

Вы можете получить дату в виде локального часового пояса, например, mm / dd / yyyy или dd / mm / yyyy и т.д. используя модуль языка python. Просто добавьте эту строку перед прокруткой списка совпадений.

locale.setlocale(locale.LC_ALL, »)

Это фрагмент кода, который я написал для одного из моих проектов. Надеюсь, он поможет.

Ещё способы вывода даты и время из .txt-файла на Python

Этот код должен печатать массив всех дат в .txt-файле.

import re
import datetime
filepath = ‘new 1.txt’
datepattern = ‘%d-%m-%Y’
with open(filepath, ‘r’) as f:
file = f.read()
x = re.findall(‘\d\d-\d\d-\d\d\d\d’, file)
y = []
for item in x:
try:
date = datetime.datetime.strptime(item, datepattern)
y.append(date)
except:
pass
res = []
for item in y:
a, b = str(item).split(‘ ‘)
res.append(a)

for item in res: print(item)

Храните текстовый файл и скрипт в одной папке или отредактируйте путь в скрипте.
Поместите свое текстовое имя в строку 3 вместо «нового 1.txt». Если вы хотите найти какой-либо другой формат, внесите соответствующие изменения в переменную datepattern строки 4. Ранее мы рассматривали как вывести в текстовый файл текущую дату и время используя командную строку CMD Windows.

Строка 10 отфильтровывает любые фиктивные числовые значения, которые выглядят как даты, но не являются. Например, 23-43-2001 не является датой, но шаблон совпадает с датой, поэтому он будет отфильтрован.

Или вы можете использовать python re для извлечения дат. Пример кода ниже

import re
fin = open(«path-to-txt»,»r»)
text = fin.read()
match=re.search(r'(\d+/\d+/\d+)’,text)
print match.group()