Уведомления

Группа в Telegram: @pythonsu

#1 Март 31, 2021 15:55:17

mik555
Зарегистрирован: 2021-03-31
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

Помогите решить проблему. Обычная программа для отображения текста:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def index():
return ‘<h1>Hello world!</h1>’

@app.route('/user/<name>')
def user(name):
return ‘<h1>Hi, %s!</h1>’ % name

if __name__=='__main__':
app.run(debug=True)
При запуске, которой выдается ошибка:
* Serving Flask app “flask2” (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Restarting with stat
* Debugger is active!
* Debugger PIN: 720-831-746
Exception in thread Thread-1:
Traceback (most recent call last):
File “C:\\Python38\lib\threading.py”, line 932, in _bootstrap_inner
self.run()
File “C:\\Python38\lib\threading.py”, line 870, in run
self._target(*self._args, **self._kwargs)
File “C:\\Roaming\Python\Python38\site-packages\werkzeug\serving.py”, line 996, in inner
srv = make_server(
File “C:\\Roaming\Python\Python38\site-packages\werkzeug\serving.py”, line 847, in make_server
return ThreadedWSGIServer(
File “C:\\Roaming\Python\Python38\site-packages\werkzeug\serving.py”, line 740, in __init__
HTTPServer.__init__(self, server_address, handler)
File “C:\\Python38\lib\socketserver.py”, line 452, in __init__
self.server_bind()
File “C:\\Python38\lib\http\server.py”, line 140, in server_bind
self.server_name = socket.getfqdn(host)
File “C:\\Python38\lib\socket.py”, line 756, in getfqdn
hostname, aliases, ipaddrs = gethostbyaddr(name)
UnicodeDecodeError: ‘utf-8’ codec can't decode byte 0xcc in position 0: invalid continuation byte

Process finished with exit code -1

Офлайн

#2 Март 31, 2021 20:21:45

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

.



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#3 Март 22, 2022 12:03:47

D7size
Зарегистрирован: 2022-03-21
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

# -*- coding: utf-8 -*- - попробуй в начале файла

Офлайн

#4 Март 22, 2022 12:52:41

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9846
Репутация: +  853  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

D7size
# -*- coding: utf-8 -*- - попробуй в начале файла
У него третий питон. А в третьем питоне это сделали по умолчанию. Если кодировка не указана, то предполагается utf-8. Во втором питоне была ascii, поэтому там надо ставить utf-8 всегда.



Отредактировано py.user.next (Март 22, 2022 12:53:06)

Офлайн

#5 Март 22, 2022 13:54:20

D7size
Зарегистрирован: 2022-03-21
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

Хз у меня 3,6 на разных машинах работает по разному почему-то, друг если можешь поомги мне в моем посте, там вопрос тупой, но с подковыркой.

К это посту еще попробуй строчки кодириовать декодировать в ручную через функцию пример :

  f = open('user_tmp.txt', 'r', encoding='utf-8')

Офлайн

#6 Март 22, 2022 21:22:19

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9846
Репутация: +  853  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

D7size
Хз у меня 3,6 на разных машинах работает по разному почему-то
Это давно уже введено
https://peps.python.org/pep-3120/
Поэтому кодировку и не пишут уже давно, только если она специфическая какая-то. Просто не пиши кодировку и сам файл должен быть записан в кодировке utf-8. Для этого можешь поставить себе Notepad++ или Sublime Text и там смотреть кодировку файла и менять её.

А вот при открытии файла на чтение или запись кодировку нужно всегда указывать, так как это разные вещи “кодировка исходника” и “кодировка открытого файла”.



Отредактировано py.user.next (Март 22, 2022 21:23:44)

Офлайн

#7 Март 23, 2022 11:03:08

D7size
Зарегистрирован: 2022-03-21
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

Да вот друг я так и делаю, а файлы которые пишутсяь на лету имеют cp-1251 так как под виндой, на ноуте проблем нету с этим, а на пк полноценном приходиться устраивает такой геморой, может винда работает не правильно, но это не беда, encod decod выручиает, я питоном три недели занимаюсь, пока еще пробка)))

Офлайн

#8 Март 23, 2022 12:59:56

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9846
Репутация: +  853  -
Профиль   Отправить e-mail  

UnicodeDecodeError: 'utf-8' Flask

D7size
может винда работает не правильно
Да Windows - это система для бухгалтерш и подростков, играющих в игры. Поэтому там эта кодировка из прошлого века, которая не покрывает все языки мира даже. Полноценная кодировка - это utf-8. Чтобы в винде на ней писать, поставь нормальный текстовый редактор. Не надо там нигде ставить кодировку в исходниках, надо просто нормальный редактор кода поставить, раз ты решил в этой убогой системе заниматься программированием. На самом деле, ты теряешь ещё больше всего, но даже не знаешь об этом. Так что ставь себе Linux, так как там ты вообще не столкнёшься даже с такими проблемами. В Linux есть программы sed, awk, grep, компиляторы и всё бесплатно. В винде нет нихера и каждая прожка, которая делает хоть что-то более менее, выдаётся как откровение века. Причина указана выше: это система для ничего не знающих и ничего не понимающих; а сделана она для того, чтобы собирать с них деньги.



Отредактировано py.user.next (Март 23, 2022 13:03:34)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version