Skip to content

Commit

Permalink
Merge 6da75c8 into dfe55f2
Browse files Browse the repository at this point in the history
  • Loading branch information
nsomabalint committed May 21, 2024
2 parents dfe55f2 + 6da75c8 commit 4da3b98
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/datetime-parser-cicd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
python -m mypy --ignore-missing-imports hun_date_parser
- name: Static analysis with flake8
run: |
python -m flake8 --max-line-length=120 --per-file-ignores='patterns.py:E501' hun_date_parser
python -m flake8 --max-line-length=120 --per-file-ignores='patterns.py:E501,datetime_extractor.py:E722' hun_date_parser
- name: Test with pytest
run: |
pytest --cov hun_date_parser
Expand Down
3 changes: 3 additions & 0 deletions hun_date_parser/date_parser/date_parsers.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ def match_iso_date(s: str,
for group in match:
group = [int(m.lstrip('0')) for m in group if m.lstrip('0')]

if not group:
continue

if realistic_year_restriction and not is_year_realistic(group[0]):
continue

Expand Down
33 changes: 22 additions & 11 deletions hun_date_parser/date_parser/datetime_extractor.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,14 @@ def text2datetime(input_sentence: str, now: datetime = datetime.now(),
:param realistic_year_required: Defines whether to restrict year candidates to be between 1900 and 2100.
:return: list of datetime interval dictionaries
"""
datetime_extractor = DatetimeExtractor(now=now,
output_container='datetime',
search_scope=search_scope,
realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
try:
datetime_extractor = DatetimeExtractor(now=now,
output_container='datetime',
search_scope=search_scope,
realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
except:
return []


def text2date(input_sentence: str, now: datetime = datetime.now(),
Expand All @@ -60,9 +63,13 @@ def text2date(input_sentence: str, now: datetime = datetime.now(),
:param realistic_year_required: Defines whether to restrict year candidates to be between 1900 and 2100.
:return: list of date interval dictionaries
"""
datetime_extractor = DatetimeExtractor(now=now, output_container='date',
search_scope=search_scope, realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
try:
datetime_extractor = DatetimeExtractor(now=now, output_container='date',
search_scope=search_scope,
realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
except:
return []


def text2time(input_sentence: str, now: datetime = datetime.now(),
Expand All @@ -76,9 +83,13 @@ def text2time(input_sentence: str, now: datetime = datetime.now(),
:param realistic_year_required: Defines whether to restrict year candidates to be between 1900 and 2100.
:return: list of time interval dictionaries
"""
datetime_extractor = DatetimeExtractor(now=now, output_container='time',
search_scope=search_scope, realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
try:
datetime_extractor = DatetimeExtractor(now=now, output_container='time',
search_scope=search_scope,
realistic_year_required=realistic_year_required)
return datetime_extractor.parse_datetime(sentence=input_sentence)
except:
return []


def match_rules(now: datetime, sentence: str,
Expand Down
2 changes: 2 additions & 0 deletions test/test_date_parsers.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,8 @@
('8000 forint', [], SearchScopes.NOT_RESTRICTED, True),
('8000', [[Year(8000, 'match_iso_date')]], SearchScopes.PAST_SEARCH, False),
('8000 forint', [], SearchScopes.PAST_SEARCH, False),
('0000', [], SearchScopes.NOT_RESTRICTED, False),
('0000', [], SearchScopes.NOT_RESTRICTED, True),
]

tf_weekday = [
Expand Down

0 comments on commit 4da3b98

Please sign in to comment.