@vovka_losira

Как исправить ошибку кодировки данных MySQL?

Решил запарсить весь список сериалов с LostFilms. Использую Python, пытаюсь загнать данные в MySQL базу.

Мой код:
from bs4 import BeautifulSoup
import mysql.connector
import unicodedata





data_html = open('LF_all_ser.html', encoding='utf8').read()


soup = BeautifulSoup(data_html, 'html.parser')

#All_names = soup.find_all('div', class_='name-ru')

i = 1

all_ser = soup.find_all('div', class_='name-ru')
for div in all_ser:

  a = div.get_text()
  print(a)

  conn = mysql.connector.connect( user ='root',
                                password = 'xxxxxxx',
                                host = 'localhost',
                                database = 'serials')

  cursor = conn.cursor()
  add = 'INSERT INTO serall (id, name) VALUES (%s,%s)'
  data = [(i, a)]

  cursor.executemany(add,data)
  conn.commit()


Появилась проблемка, которую не понимаю - как решить...

Данные на английском в базе выглядят нормально, а вот русский текст выглядит как тарабарщина.
5ce5207ae2f3a199190870.png
Явно какая-то проблема с кодировкой, но не понимаю - как ее решить(

Настройки db следующие :
5ce520c57b0ef434449980.png

ПАМАГИТИ (
  • Вопрос задан
  • 65 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
А выполните-ка show variables like 'char%'; непосредственно в Python-скрипте...
Подозреваю, что кодировка клиентского подключения неожиданно окажется другой.
Ну и SET NAMES 'utf8'; в Python-скрипте - для решения проблемы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы