• Почему не работает русский текст в консоли ubuntu server 18?

    @vitalykhy Автор вопроса
    Проблема оказалась на стороне Python3.
    Помогите понять в чем конкретно.

    Вот код:
    print("test: " + input_string)
    
    # to lowercase
    text = input_string.lower()
    print(text)
    # decode html
    text = html.unescape(text)
    print("html.unescape: " + text)
    # replace
    text = text.replace("\xc2\xa0", " ")
    print("text.replace: " + text)
    # Remove usernames
    text = re.sub('@[^\s]+', '', text)
    print("re.sub1: " + text)
    # replace hashtags by just words
    text = re.sub(r'#([^\s]+)', r'\1', text)
    print("re.sub2: " + text)
    # remove links
    text = re.sub('((www\.[^\s]+)|(https?://[^\s]+))', '', text)
    print("re.sub3: " + text)
    
    text = re.sub(r'[^a-zа-я0-9ё\s-]', ' ', text)
    print("re.sub4: " + text)
    # correct all multiple white spaces to a single white space
    text = re.sub('[\s]+', ' ', text)
    print("re.sub5: " + text)
    # Additional clean up : removing words less than 2 chars, and remove space at the beginning and teh end
    text = re.sub(r'\W*\b\w{1,2}\b', '', text)
    print("re.sub6: " + text)
    text = text.strip()


    Вот вывод:

    test: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    html.unescape: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    text.replace: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    re.sub1: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    re.sub2: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    re.sub3: В Совфеде поприветствовали решение Киева возобновить перевозки в Крым
    re.sub4:
    re.sub5:
    re.sub6:


    Напомню, что код вызывается из php через popen. Не работает только на сервере. Локально все работает отлично.