boompack commited on
Commit
433e6be
·
verified ·
1 Parent(s): 97098d9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -14
app.py CHANGED
@@ -2,7 +2,7 @@ import gradio as gr
2
  import re
3
 
4
  # Функция для извлечения комментариев
5
- def extract_comments(input_text):
6
  # Шаблон для разделения комментариев по ключевым словам
7
  comment_blocks = re.split(r'Ответить|Действия с комментарием|Скрыть ответы|Показать перевод', input_text)
8
 
@@ -32,16 +32,9 @@ def extract_comments(input_text):
32
  # Добавляем в результаты
33
  results.append({"Пользователь": username, "Текст": text, "Лайков": likes})
34
  break # Переходим к следующему блоку, как только нашли совпадение
35
-
36
- return results
37
-
38
- # Функция для отображения результатов в удобном виде
39
- def display_results(input_text):
40
- results = extract_comments(input_text)
41
 
42
- if not results:
43
- return "Нет комментариев для отображения."
44
- else:
45
  display_text = ""
46
  for result in results:
47
  display_text += f"Пользователь: {result['Пользователь']}\n"
@@ -49,15 +42,25 @@ def display_results(input_text):
49
  display_text += f"Лайков: {result['Лайков']}\n"
50
  display_text += "-" * 50 + "\n"
51
  return display_text
 
 
 
 
 
 
 
52
 
53
  # Создание интерфейса с Gradio
54
  iface = gr.Interface(
55
  fn=display_results, # Функция, которая будет вызываться
56
- inputs="text", # Текстовый ввод для пользователей
57
- outputs="text", # Вывод результатов в текстовом формате
 
 
 
58
  title="Анализ комментариев", # Название интерфейса
59
- description="Введите текст комментариев, и система автоматически разделит их, извлекая информацию о пользователях и лайках.",
60
- theme="default" # Тема оформления
61
  )
62
 
63
  # Запуск интерфейса
 
2
  import re
3
 
4
  # Функция для извлечения комментариев
5
+ def extract_comments(input_text, expected_count):
6
  # Шаблон для разделения комментариев по ключевым словам
7
  comment_blocks = re.split(r'Ответить|Действия с комментарием|Скрыть ответы|Показать перевод', input_text)
8
 
 
32
  # Добавляем в результаты
33
  results.append({"Пользователь": username, "Текст": text, "Лайков": likes})
34
  break # Переходим к следующему блоку, как только нашли совпадение
 
 
 
 
 
 
35
 
36
+ # Проверяем, совпадает ли количество комментариев с ожидаемым
37
+ if len(results) == expected_count:
 
38
  display_text = ""
39
  for result in results:
40
  display_text += f"Пользователь: {result['Пользователь']}\n"
 
42
  display_text += f"Лайков: {result['Лайков']}\n"
43
  display_text += "-" * 50 + "\n"
44
  return display_text
45
+ else:
46
+ return f"Ошибка! Количество найденных комментариев: {len(results)}, ожидалось: {expected_count}."
47
+
48
+
49
+ # Функция для отображения результатов в удобном виде
50
+ def display_results(input_text, expected_count):
51
+ return extract_comments(input_text, expected_count)
52
 
53
  # Создание интерфейса с Gradio
54
  iface = gr.Interface(
55
  fn=display_results, # Функция, которая будет вызываться
56
+ inputs=[
57
+ gr.Textbox(label="Введите текст комментариев", lines=10), # Текстовый ввод для комментариев
58
+ gr.Number(label="Ожидаемое количество комментариев", value=94) # Ввод для количества комментариев
59
+ ],
60
+ outputs="text", # Вывод результатов в текстовом формате
61
  title="Анализ комментариев", # Название интерфейса
62
+ description="Введите текст комментариев и ожидаемое количество, чтобы проверить, совпадает ли результат с ожиданиями.",
63
+ theme="default" # Тема оформления
64
  )
65
 
66
  # Запуск интерфейса