@@ -39,15 +39,17 @@ def calc_score(abst: str, keywords: dict) -> (float, list):
39
39
return sum_score , hit_kwd_list
40
40
41
41
42
- def search_keyword (articles : list , keywords : dict ) -> list :
42
+ def search_keyword (
43
+ articles : list , keywords : dict , score_threshold : float
44
+ ) -> list :
43
45
results = []
44
46
45
47
for article in articles :
46
48
url = article ['arxiv_url' ]
47
49
title = article ['title' ]
48
50
abstract = article ['summary' ]
49
51
score , hit_keywords = calc_score (abstract , keywords )
50
- if score != 0 :
52
+ if ( score != 0 ) and ( score >= score_threshold ) :
51
53
title_trans = get_translated_text ('ja' , 'en' , title )
52
54
abstract = abstract .replace ('\n ' , '' )
53
55
abstract_trans = get_translated_text ('ja' , 'en' , abstract )
@@ -164,6 +166,7 @@ def main():
164
166
config = get_config ()
165
167
subject = config ['subject' ]
166
168
keywords = config ['keywords' ]
169
+ score_threshold = float (config ['score_threshold' ])
167
170
168
171
yesterday = datetime .datetime .today () - datetime .timedelta (days = 1 )
169
172
yesterday_str = yesterday .strftime ('%Y%m%d' )
@@ -175,7 +178,7 @@ def main():
175
178
max_results = 1000 ,
176
179
sort_by = 'submittedDate' ,
177
180
iterative = False )
178
- results = search_keyword (articles , keywords )
181
+ results = search_keyword (articles , keywords , score_threshold )
179
182
180
183
slack_id = os .getenv ("SLACK_ID" ) or args .slack_id
181
184
line_token = os .getenv ("LINE_TOKEN" ) or args .line_token
0 commit comments