tx3bas commited on
Commit
72d48ab
·
verified ·
1 Parent(s): 4799c8b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -11
app.py CHANGED
@@ -59,20 +59,31 @@ def split_text(text, limit=4000):
59
  return chunks
60
 
61
  def translate_html_content(text, source_lang, target_lang):
62
- elementor_pattern = re.compile(r'(<[^>]*class="[^"]*elementor[^"]*"[^>]*>.*?</[^>]*>)', re.DOTALL|re.IGNORECASE)
63
- parts = elementor_pattern.split(text)
64
 
 
 
 
 
 
65
  translated_parts = []
66
- for i, part in enumerate(parts):
67
- if i % 2 == 1: # Elementor element
68
- translated_parts.append(part)
69
- continue
70
-
71
- chunks = split_text(part)
72
- translated_chunks = [translate(chunk, target_lang, source_lang) for chunk in chunks]
73
- translated_parts.append(''.join(translated_chunks))
 
 
 
 
 
 
74
 
75
- return ''.join(translated_parts)
76
 
77
  def main(Texto, source_lang, target_lang):
78
  source_code = lang_dict[source_lang]
 
59
  return chunks
60
 
61
  def translate_html_content(text, source_lang, target_lang):
62
+ # Patrón para identificar etiquetas HTML completas
63
+ html_tag_pattern = re.compile(r'<[^>]+>')
64
 
65
+ # Separar el texto en partes (texto y etiquetas)
66
+ parts = html_tag_pattern.split(text)
67
+ tags = html_tag_pattern.findall(text)
68
+
69
+ # Traducir solo las partes que no son etiquetas HTML
70
  translated_parts = []
71
+ for part in parts:
72
+ if part.strip(): # Traducir solo si hay texto no vacío
73
+ chunks = split_text(part)
74
+ translated_chunks = [translate(chunk, target_lang, source_lang) for chunk in chunks]
75
+ translated_parts.append(''.join(translated_chunks))
76
+ else:
77
+ translated_parts.append(part) # Mantener partes vacías o de solo espacios
78
+
79
+ # Reconstruir el texto combinando partes traducidas y etiquetas originales
80
+ translated_text = ''
81
+ for i in range(len(parts)):
82
+ translated_text += translated_parts[i]
83
+ if i < len(tags): # Añadir la etiqueta correspondiente si existe
84
+ translated_text += tags[i]
85
 
86
+ return translated_text
87
 
88
  def main(Texto, source_lang, target_lang):
89
  source_code = lang_dict[source_lang]