Add multilingual audit CI pipeline + extract mandelblog_content_guard
This commit is contained in:
24
mandelblog_content_guard/normalizers/ru.py
Normal file
24
mandelblog_content_guard/normalizers/ru.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import re
|
||||
|
||||
|
||||
RU_LINE_REPLACEMENTS = {
|
||||
"План многоязычного запуска Anpassung & Integrationen Интеграции API, специфические рабочие процессы и индивидуальные блоки, адаптированные под вашу компанию.": "План многоязычного запуска Настройка и интеграции Интеграции API, специфические рабочие процессы и индивидуальные блоки, адаптированные под вашу компанию.",
|
||||
"Запланировать звонок по бизнес-сайту Detailliertes Seitenlayout Разделы, ориентированные на конверсию Base prête pour le SEO Boutique en ligne Для проектов с товарами, оплатой и дальнейшим развитием e-commerce.": "Запланировать звонок по бизнес-сайту Детальная структура страниц Разделы, ориентированные на конверсию Основа, готовая для SEO Интернет-магазин Для проектов с товарами, оплатой и дальнейшим развитием e-commerce.",
|
||||
"Связаться с нами Посмотреть проекты Unverbindliches Gespräch, klares Angebot Мы создаём быстрые сайты и интернет-магазины, которыми ваша команда может управлять самостоятельно.": "Связаться с нами · Посмотреть проекты · Без обязательств, понятное предложение. Мы создаём быстрые сайты и интернет-магазины, которыми ваша команда может управлять самостоятельно.",
|
||||
}
|
||||
|
||||
RU_PHRASE_REPLACEMENTS = {
|
||||
"Base prête pour le SEO": "Основа, готовая для SEO",
|
||||
"Unverbindliches Gespräch, klares Angebot": "Без обязательств, понятное предложение",
|
||||
}
|
||||
|
||||
|
||||
def normalize_ru_text(text: str, field_path: str = "") -> str:
|
||||
if text in RU_LINE_REPLACEMENTS:
|
||||
return RU_LINE_REPLACEMENTS[text]
|
||||
cleaned = text
|
||||
for source, target in sorted(RU_PHRASE_REPLACEMENTS.items(), key=lambda item: len(item[0]), reverse=True):
|
||||
cleaned = cleaned.replace(source, target)
|
||||
return re.sub(r"\s+", " ", cleaned).strip()
|
||||
Reference in New Issue
Block a user