Analysieren von Datumsangaben aus Zeichenfolgen, die nicht zusammenhängenden Text enthalten, wobei das Parsen von GanzzaPython

Python-Programme
Anonymous
 Analysieren von Datumsangaben aus Zeichenfolgen, die nicht zusammenhängenden Text enthalten, wobei das Parsen von Ganzza

Post by Anonymous »

Was ich erreichen möchte

Mein Ziel ist es, ein Datum zu extrahieren, das mindestens einen Tag und einen Monat hat, aber auch eine Minute, eine Stunde und ein Jahr haben könnte.
Ich möchte vermeiden, dass der Parser ganze Zahlen findet und denkt, dass sie einen Tag des aktuellen Monats implizieren.
Außerdem möchte ich, dass der Parser ein Datum findet, das nur einen kleinen Teil davon ausmacht eine größere Zeichenfolge.
Denken Sie:
'Heute ist der schönste 27. März 2025' = datetime.datetime(2025, 3, 27, 0, 0)

'2 GB RAM' != datetime.datetime(2025, 3, 2, 0, 0) (Angenommen, wir befinden uns gerade in März)
Was ich bisher versucht habe
Verwendung des fuzzy=True-Arguments in dateutils

Code: Select all

from dateutil import parser

#OK: Correct Datetime is returned: datetime.datetime(2025, 3, 30, 0, 0)
parser.parse('Today is the most wonderful 30th March 2025', fuzzy=True)

#NOT OK: Integer is not ignored, Datetime is returned: datetime.datetime(2025, 3, 2, 0, 0)
parser.parse('2 is my lucky number', fuzzy=True)
Verwenden der Einstellung REQUIRED_PARTS im Dateparser

Code: Select all

frome dateparser import parse

# OK: Returns correct datetime: datetime.datetime(2025, 3, 30, 0, 0
parse('30 March', settings={'REQUIRE_PARTS': ['month', 'day']})

#OK: Integer is Ignored, no datetime returned
parse('30', settings={'REQUIRE_PARTS': ['month', 'day']})

#NOT OK: Datetime Should be Found
parse('Today is the most wonderful 30th of March', settings={'REQUIRE_PARTS': ['month', 'day']})
Es wäre toll, wenn ich das Argument „fuzzy=True“ aus dem Modul „dateutils“ mit dem Argument „settings“ aus dem Modul „dateparser“ kombinieren könnte, aber da es sich um separate Module handelt, ist das nicht machbar.
Gibt es eine andere Möglichkeit, die gleiche Funktionalität zu erreichen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post