У меня есть пользовательский интерфейс, который берет немецкий язык среди прочего и переводит их в английские предложения.
# -*- coding: utf-8 -*-
from googletrans import Translator
def tr(s)
translator = Translator()
return translator.translate(wordDE,src='de',dest='en').text
Иногда я получаю странные символы от переводчика.
Например:
DE: Pascal und PHP sind Programmiersprachen für Softwareentwickler und Ingenieure.
googletrans EN (utf8): Pascal и PHP - языки программирования для разработчиков и инженеров программного обеспечения.
Так выглядит строка в формате utf8. Когда я открываю его с помощью Windows textEditor, это выглядит так:
googletrans RU: Pascal и PHP являются языками программирования для разработчиков и инженеров программного обеспечения.
Как вы можете видеть перед " для программного обеспечения ", это 2 странных символа, которые возвращает функция translate (). Эти символы также находятся в строке "googletrans EN (utf8)". Вы не можете их видеть, но когда вы пропускаете строку с помощью клавиш со стрелками, курсор не перемещается для « для программного обеспечения » в течение 2 кликов. Так что персонажи есть, но не видны. (Может быть, вы не можете сделать это здесь, потому что строка уже отформатирована с веб-сайта)
Иногда встречаются и другие символы, которые не видны после перевода.
Мне нужно убрать этих персонажей. Я не могу использовать только ascii, потому что мне нужно сохранить также немецкие символы, такие как " ö, ä, ü, ß " в txt-файле. Может быть, это просто проблема с кодировкой, которую я не понимаю или что там не так?