SOAP_temp / Helper.py
adiv07's picture
Upload 12 files
7d82b61 verified
import re
# table
css = """
.scrollable-table {
max-height: 300px;
overflow-y: auto;
border: 1px solid #ccc;
padding: 10px;
}
.scrollable-table table {
width: 100%;
border-collapse: collapse;
background-color: #FFFFFF;
}
.scrollable-table th, .scrollable-table td {
border: 1px solid #ddd;
padding: 8px;
text-align: left;
color: #000000
}
.scrollable-table th {
background-color: #EAF2FF;
color: #3366CC;
}
"""
def parse_transcript(transcript):
# Regex to match the timestamps and the text
pattern = re.compile(r'(\d{2}:\d{2})\s+(.+?)(?=\d{2}:\d{2}|$)', re.DOTALL)
matches = pattern.findall(transcript)
timestamps = []
texts = []
for match in matches:
timestamps.append(match[0])
texts.append(match[1].strip())
return timestamps, texts
def create_transcript_table(timestamps, transcript_text):
table_html = '<div class="scrollable-table">\n'
table_html += '<table>\n'
table_html += ' <thead>\n'
table_html += ' <tr>\n'
table_html += ' <th>Timestamp</th>\n'
table_html += ' <th>Transcript</th>\n'
table_html += ' </tr>\n'
table_html += ' </thead>\n'
table_html += ' <tbody>\n'
for ts, text in zip(timestamps, transcript_text):
table_html += ' <tr>\n'
table_html += f' <td>{ts}</td>\n'
table_html += f' <td>{text}</td>\n'
table_html += ' </tr>\n'
table_html += ' </tbody>\n'
table_html += '</table>\n'
return table_html
def filter_transcript():
timestamps = [
"15.0 - 17.0",
"38.08 - 39.50"
]
transcript_text = [
"Sad (prompt; 1st)",
"Because he fell (no prompt; 2nd)"
]
return timestamps, transcript_text
# Guidance Generation Function
def generate_guidance():
guidance_text = """ Engagement: Student may display behaviors such as rocking when showing engagement.
Impact factors: Weather (e.g., raining) can impact student’s performance."""
return guidance_text