diff --git a/Auto lead/server.py b/Auto lead/server.py index 16c7389..67cc0ad 100644 --- a/Auto lead/server.py +++ b/Auto lead/server.py @@ -146,33 +146,37 @@ def parse_email(subject, body_html): result["town"] = town break - # Формируем addition (исключая ФИО, телефон, email) - exclusion_patterns = [ - r"^Имя:.*$", - r"^Фамилия:.*$", - r"^Отчество:.*$", - r"^Телефон:.*$", - r"^Email:.*$" - ] + # Дата и время + result["received_at"] = datetime.now().strftime("%d.%m %H:%M") - cleaned_lines = [] - for line in text_body.split('\n'): - line = line.strip() - if not line: - continue - exclude = False - for pattern in exclusion_patterns: - if re.match(pattern, line, re.IGNORECASE): - exclude = True - break - if not exclude: - cleaned_lines.append(line) + # Формируем addition (исключая распарсенные данные) + cleaned_body = text_body + + if result["first_name"]: + cleaned_body = cleaned_body.replace(result["first_name"], "") + + if result["surname"]: + cleaned_body = cleaned_body.replace(result["surname"], "") + + if result["second_name"]: + cleaned_body = cleaned_body.replace(result["second_name"], "") + + if result["phone"]: + cleaned_body = cleaned_body.replace(result["phone"], "") + phone_clean = result["phone"].replace("+7", "").replace("+", "") + if phone_clean: + cleaned_body = cleaned_body.replace(phone_clean, "") + + if result["email"]: + cleaned_body = cleaned_body.replace(result["email"], "") + + # Чистим лишние строки + lines = [line.strip() for line in cleaned_body.split('\n') if line.strip()] + cleaned_body = '\n'.join(lines) - cleaned_body = '\n'.join(cleaned_lines) addition_lines = [f"Тема: {plain_subject}", "", cleaned_body] result["addition"] = "\n".join(addition_lines) - # Дата и время получения лида - result["received_at"] = datetime.now().strftime("%d.%m %H:%M") + return result def fetch_new_emails():