python 3.2, linux
запускаю питон в консоли, выполняю
subprocess.Popen('grep «тест» log.txt', shell=True,stdout=subprocess.PIPE, stdin=subprocess.PIPE)
всё работает
запускаю скрипт как cgi через apache и получаю
as_hlp.py", line 206, in execute stdout=device, stdin=subprocess.PIPE) File «/usr/local/lib/python3.2/subprocess.py», line 736, in __init__ restore_signals, start_new_session) File «/usr/local/lib/python3.2/subprocess.py», line 1175, in _execute_child restore_signals, start_new_session, preexec_fn) UnicodeEncodeError: 'ascii' codec can't encode characters in position 26-28: ordinal not in range(128)
вообще, если я пытаюсь вывести принтом кириллицу на страницу, ошибки такие же
тогда я делаю так:
[code=python]
def _print(text):
sys.stdout.buffer.write(text.encode('utf8'))
sys.stdout.flush()
[/code]
но subprocess.Popen не принимает байты
если ему их передать, отвечает:
line 1175, in _execute_child restore_signals, start_new_session, preexec_fn) TypeError: Can't convert 'int' object to str implicitly
Что делать? Я не понимаю как тогда передать ему правильный утф-8 с кириллицей?
Пробовал декодировать и потом снова енкодировать в утф-8 - не помогает
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от true_admin
Ответ на:
комментарий
от pi11
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от sergey-novikov
Ответ на:
комментарий
от baverman
Ответ на:
комментарий
от Deleted
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Ошибка при установке Chromium 31.0 в Slackware 14.1 64 bit (2015)
- Форум Поломался Gentoo при переезде на другой профиль (2018)
- Форум Не мойму как установить pytesseract (2021)
- Форум [вопрос пионера]Python, командная строка, shntool (2009)
- Форум lambda/for в subprocess.Popen (2021)
- Форум python3 (2019)
- Форум [bpython на python3] non-ascii (кириллица) как настроить? (2011)
- Форум Задачка Python3 (2015)
- Форум Ansible + Python3 (2015)
- Форум python3 import (2013)