cutechicken commited on
Commit
71c3ed0
ยท
verified ยท
1 Parent(s): 4a2e1bf

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -7
app.py CHANGED
@@ -73,10 +73,10 @@ def analyze_article_sentiment(article):
73
  def calculate_time_weight(article_date_str):
74
  """
75
  ๊ธฐ์‚ฌ ์‹œ๊ฐ„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์ค‘์น˜ ๊ณ„์‚ฐ
76
- - 1์‹œ๊ฐ„๋‹น 1%์”ฉ ๊ฐ์†Œ, ์ตœ๋Œ€ 24์‹œ๊ฐ„๊นŒ์ง€๋งŒ ๊ณ ๋ ค
77
- - 1์‹œ๊ฐ„ ๋‚ด ๊ธฐ์‚ฌ: 24% ๊ฐ€์ค‘์น˜
78
- - 10์‹œ๊ฐ„ ์ „ ๊ธฐ์‚ฌ: 15% ๊ฐ€์ค‘์น˜
79
- - 24์‹œ๊ฐ„ ์ด์ƒ ์ „ ๊ธฐ์‚ฌ: 1% ๊ฐ€์ค‘์น˜
80
  """
81
  try:
82
  # ๊ธฐ์‚ฌ ๋‚ ์งœ ๋ฌธ์ž์—ด ํŒŒ์‹ฑ (๋‹ค์–‘ํ•œ ํ˜•์‹ ์ฒ˜๋ฆฌ)
@@ -110,9 +110,11 @@ def calculate_time_weight(article_date_str):
110
  hours_diff = (now - parsed_date).total_seconds() / 3600
111
 
112
  # 24์‹œ๊ฐ„ ์ด๋‚ด์ธ ๊ฒฝ์šฐ๋งŒ ๊ณ ๋ ค
113
- if hours_diff <= 24:
114
- weight = 0.24 - (0.01 * int(hours_diff)) # 1์‹œ๊ฐ„๋‹น 1%์”ฉ ๊ฐ์†Œ
115
- return max(0.01, weight) # ์ตœ์†Œ 1% ๋ณด์žฅ
 
 
116
  else:
117
  return 0.01 # 24์‹œ๊ฐ„ ์ด์ƒ ์ง€๋‚œ ๊ธฐ์‚ฌ๋Š” 1% ๊ฐ€์ค‘์น˜
118
  except Exception as e:
@@ -125,6 +127,11 @@ def calculate_sentiment_score(sentiment_label, time_weight):
125
  - positive: +3์ 
126
  - neutral: 0์ 
127
  - negative: -3์ 
 
 
 
 
 
128
  """
129
  base_score = {
130
  'positive': 3,
 
73
  def calculate_time_weight(article_date_str):
74
  """
75
  ๊ธฐ์‚ฌ ์‹œ๊ฐ„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์ค‘์น˜ ๊ณ„์‚ฐ
76
+ - 1์‹œ๊ฐ„ ๋‚ด ๊ธฐ์‚ฌ๋Š” 24% ๊ฐ€์ค‘์น˜
77
+ - ์‹œ๊ฐ„์ด ์ง€๋‚ ์ˆ˜๋ก 1%์”ฉ ๊ฐ์†Œ (์ตœ์†Œ 1%)
78
+ - ์˜ˆ: 1์‹œ๊ฐ„ ๋‚ด ๊ธฐ์‚ฌ = 24%, 10์‹œ๊ฐ„ ์ „ ๊ธฐ์‚ฌ = 15%, 24์‹œ๊ฐ„ ์ „ ๊ธฐ์‚ฌ = 1%
79
+ - 24์‹œ๊ฐ„ ์ด์ƒ์ด๋ฉด 1%๋กœ ๊ณ ์ •
80
  """
81
  try:
82
  # ๊ธฐ์‚ฌ ๋‚ ์งœ ๋ฌธ์ž์—ด ํŒŒ์‹ฑ (๋‹ค์–‘ํ•œ ํ˜•์‹ ์ฒ˜๋ฆฌ)
 
110
  hours_diff = (now - parsed_date).total_seconds() / 3600
111
 
112
  # 24์‹œ๊ฐ„ ์ด๋‚ด์ธ ๊ฒฝ์šฐ๋งŒ ๊ณ ๋ ค
113
+ if hours_diff < 1: # 1์‹œ๊ฐ„ ์ด๋‚ด
114
+ return 0.24 # 24% ๊ฐ€์ค‘์น˜
115
+ elif hours_diff < 24: # 1~23์‹œ๊ฐ„
116
+ # 1์‹œ๊ฐ„๋‹น 1%์”ฉ ๊ฐ์†Œ (1์‹œ๊ฐ„ = 24%, 2์‹œ๊ฐ„ = 23%, ...)
117
+ return max(0.01, 0.24 - ((hours_diff - 1) * 0.01))
118
  else:
119
  return 0.01 # 24์‹œ๊ฐ„ ์ด์ƒ ์ง€๋‚œ ๊ธฐ์‚ฌ๋Š” 1% ๊ฐ€์ค‘์น˜
120
  except Exception as e:
 
127
  - positive: +3์ 
128
  - neutral: 0์ 
129
  - negative: -3์ 
130
+
131
+ ์‹œ๊ฐ„ ๊ฐ€์ค‘์น˜๋Š” ๋ฐฑ๋ถ„์œจ๋กœ ์ ์šฉ (๊ธฐ๋ณธ ์ ์ˆ˜์— ๊ฐ€์ค‘์น˜ % ๋งŒํผ ์ถ”๊ฐ€)
132
+ ์˜ˆ:
133
+ - 1์‹œ๊ฐ„ ๋‚ด ๊ธ์ • ๊ธฐ์‚ฌ: 3์  + (3 * 24%) = 3 + 0.72 = 3.72์ 
134
+ - 10์‹œ๊ฐ„ ์ „ ๋ถ€์ • ๊ธฐ์‚ฌ: -3์  + (-3 * 15%) = -3 - 0.45 = -3.45์ 
135
  """
136
  base_score = {
137
  'positive': 3,