refactor: replace SentenceParser._parse_special with pre-parsed papers
This commit is contained in:
parent
617a8ebd6e
commit
78b4552627
7
2020.ics
7
2020.ics
|
|
@ -35,13 +35,6 @@ DTSTAMP;VALUE=DATE:20200124
|
|||
UID:2020-01-24/2020-02-03/NateScarlet/holiday-cn
|
||||
END:VEVENT
|
||||
BEGIN:VEVENT
|
||||
SUMMARY:上班(补春节假期)
|
||||
DTSTART;VALUE=DATE:20200203
|
||||
DTEND;VALUE=DATE:20200204
|
||||
DTSTAMP;VALUE=DATE:20200203
|
||||
UID:2020-02-03/2020-02-04/NateScarlet/holiday-cn
|
||||
END:VEVENT
|
||||
BEGIN:VEVENT
|
||||
SUMMARY:清明节假期
|
||||
DTSTART;VALUE=DATE:20200404
|
||||
DTEND;VALUE=DATE:20200407
|
||||
|
|
|
|||
|
|
@ -67,11 +67,6 @@
|
|||
"date": "2020-02-02",
|
||||
"isOffDay": true
|
||||
},
|
||||
{
|
||||
"name": "春节",
|
||||
"date": "2020-02-03",
|
||||
"isOffDay": false
|
||||
},
|
||||
{
|
||||
"name": "清明节",
|
||||
"date": "2020-04-04",
|
||||
|
|
|
|||
|
|
@ -42,7 +42,24 @@ PRE_PARSED_PAPERS = {
|
|||
"date": date(2015, 9, 6),
|
||||
"isOffDay": False,
|
||||
},
|
||||
]
|
||||
],
|
||||
"http://www.gov.cn/zhengce/content/2020-01/27/content_5472352.htm": [
|
||||
{
|
||||
"name": "春节",
|
||||
"date": date(2020, 1, 31),
|
||||
"isOffDay": True,
|
||||
},
|
||||
{
|
||||
"name": "春节",
|
||||
"date": date(2020, 2, 1),
|
||||
"isOffDay": True,
|
||||
},
|
||||
{
|
||||
"name": "春节",
|
||||
"date": date(2020, 2, 2),
|
||||
"isOffDay": True,
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -236,14 +253,6 @@ class DescriptionParser:
|
|||
class SentenceParser:
|
||||
"""Parser for holiday shift description sentence."""
|
||||
|
||||
special_cases = {
|
||||
"延长2020年春节假期至2月2日(农历正月初九": [
|
||||
{"date": date(2020, 1, 31), "isOffDay": True},
|
||||
{"date": date(2020, 2, 1), "isOffDay": True},
|
||||
{"date": date(2020, 2, 2), "isOffDay": True},
|
||||
],
|
||||
}
|
||||
|
||||
def __init__(self, parent: DescriptionParser, sentence):
|
||||
self.parent = parent
|
||||
self.sentence = sentence
|
||||
|
|
@ -343,15 +352,10 @@ class SentenceParser:
|
|||
for i in self.extract_dates(match.group(2)):
|
||||
yield {"date": i, "isOffDay": True}
|
||||
|
||||
def _parse_special(self):
|
||||
for i in self.special_cases.get(self.sentence, []):
|
||||
yield i
|
||||
|
||||
parsing_methods = [
|
||||
_parse_rest_1,
|
||||
_parse_work_1,
|
||||
_parse_shift_1,
|
||||
_parse_special,
|
||||
]
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -210,13 +210,6 @@ DTSTAMP;VALUE=DATE:20200124
|
|||
UID:2020-01-24/2020-02-03/NateScarlet/holiday-cn
|
||||
END:VEVENT
|
||||
BEGIN:VEVENT
|
||||
SUMMARY:上班(补春节假期)
|
||||
DTSTART;VALUE=DATE:20200203
|
||||
DTEND;VALUE=DATE:20200204
|
||||
DTSTAMP;VALUE=DATE:20200203
|
||||
UID:2020-02-03/2020-02-04/NateScarlet/holiday-cn
|
||||
END:VEVENT
|
||||
BEGIN:VEVENT
|
||||
SUMMARY:清明节假期
|
||||
DTSTART;VALUE=DATE:20200404
|
||||
DTEND;VALUE=DATE:20200407
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
[
|
||||
{
|
||||
"year": 2020,
|
||||
"description": "延长2020年春节假期至2月2日(农历正月初九,星期日),2月3日(星期一)起正常上班。",
|
||||
"expected": [
|
||||
{ "date": "2020-01-31", "isOffDay": true },
|
||||
{ "date": "2020-02-01", "isOffDay": true },
|
||||
{ "date": "2020-02-02", "isOffDay": true },
|
||||
{ "date": "2020-02-03", "isOffDay": false }
|
||||
]
|
||||
},
|
||||
{
|
||||
"year": 2019,
|
||||
"description": "2018年12月30日至2019年1月1日放假调休,共3天。2018年12月29日(星期六)上班。",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user