python mit websocket und mysql
Verfasst: Samstag 30. Juli 2022, 11:03
Hallo, ich bin neu hier.
Ich habe ein Schulprojekt. Ein Kollege hat ein unfertiges Programm geschrieben und macht Probleme. Ein Python-Programm startet einen Websocket, damit ich einen Dobot mit einem Web-HMI steuern kann. Es ist auch möglich, Eingabefelder auszufüllen, die in einer SQL-Datenbank gespeichert wird. Nach dem Start des Programms erhalte ich folgende Meldungen wenn ich die datan nach mysql senden will:
connection handler failed
Traceback (most recent call last):
File "/home/pi/.local/lib/python3.9/site-packages/websockets/legacy/server.py", line 232, in handler
await self.ws_handler(self)
File "/home/pi/FTP/files/demo-magician-python-64-master/socket_server.py", line 26, in server
database.save_position(data["position"])
File "/home/pi/FTP/files/demo-magician-python-64-master/database.py", line 9, in save_position
db = mysql.connector.connect(
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/pooling.py", line 287, in connect
return MySQLConnection(*args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/connection.py", line 137, in __init__
self.connect(**kwargs)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/abstracts.py", line 1095, in connect
self._open_connection()
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/connection.py", line 544, in _open_connection
self.set_converter_class(self._converter_class)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/abstracts.py", line 1271, in set_converter_class
self.converter = convclass(charset_name, self._use_unicode)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 136, in __init__
MySQLConverterBase.__init__(self, charset, use_unicode, str_fallback)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 59, in __init__
self.set_charset(charset)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 73, in set_charset
self.charset_id = CharacterSet.get_charset_info(self.charset)[0]
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/constants.py", line 775, in get_charset_info
info = cls.get_default_collation(charset)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/constants.py", line 746, in get_default_collation
raise ProgrammingError(f"Character set '{charset}' unsupported")
mysql.connector.errors.ProgrammingError: Character set 'utf8' unsupported
Was passiert hier? Die connection mit den websocket geht gut.
Aber etwas mit der MySql (mariaDB) geht nicht gut. Ich habe versucht my.conf zu verändern aber ohne Glück.
Kann jemand mir helfen?
Ich habe ein Schulprojekt. Ein Kollege hat ein unfertiges Programm geschrieben und macht Probleme. Ein Python-Programm startet einen Websocket, damit ich einen Dobot mit einem Web-HMI steuern kann. Es ist auch möglich, Eingabefelder auszufüllen, die in einer SQL-Datenbank gespeichert wird. Nach dem Start des Programms erhalte ich folgende Meldungen wenn ich die datan nach mysql senden will:
connection handler failed
Traceback (most recent call last):
File "/home/pi/.local/lib/python3.9/site-packages/websockets/legacy/server.py", line 232, in handler
await self.ws_handler(self)
File "/home/pi/FTP/files/demo-magician-python-64-master/socket_server.py", line 26, in server
database.save_position(data["position"])
File "/home/pi/FTP/files/demo-magician-python-64-master/database.py", line 9, in save_position
db = mysql.connector.connect(
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/pooling.py", line 287, in connect
return MySQLConnection(*args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/connection.py", line 137, in __init__
self.connect(**kwargs)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/abstracts.py", line 1095, in connect
self._open_connection()
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/connection.py", line 544, in _open_connection
self.set_converter_class(self._converter_class)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/abstracts.py", line 1271, in set_converter_class
self.converter = convclass(charset_name, self._use_unicode)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 136, in __init__
MySQLConverterBase.__init__(self, charset, use_unicode, str_fallback)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 59, in __init__
self.set_charset(charset)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/conversion.py", line 73, in set_charset
self.charset_id = CharacterSet.get_charset_info(self.charset)[0]
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/constants.py", line 775, in get_charset_info
info = cls.get_default_collation(charset)
File "/usr/local/lib/python3.9/dist-packages/mysql/connector/constants.py", line 746, in get_default_collation
raise ProgrammingError(f"Character set '{charset}' unsupported")
mysql.connector.errors.ProgrammingError: Character set 'utf8' unsupported
Was passiert hier? Die connection mit den websocket geht gut.
Aber etwas mit der MySql (mariaDB) geht nicht gut. Ich habe versucht my.conf zu verändern aber ohne Glück.
Kann jemand mir helfen?