Задать вопрос
@vovka_losira

Как на Python спарсить данные в mySQL таблицу?

Друзья, недавно начал учиться программировать на Python...

Пытаюсь спарсить в mySQL таблицу список названий всех сериалов с LostFilms.

Найти и вывести названия получилось, а запихнуть их в таблицу - нет(

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 = 0

for div in All_names:
    a = div.get_text()
    i = i+1
    while i<10:
           conn = mysql.connector.connect(user = 'root', password = 'pass', host = 'localhost', database = 'test')
           cursor = conn.cursor()

           add_ser = 'INSERT INTO allser (id, name) VALUES (%s,%s)'
           data_ser = [ (i, a),]

           cursor.executemany(add_ser, data_ser)
           conn.commit()


пишет - Incorrect string value: '\xD0\x9F\xD0\xBE\xD0\xBF...' for column 'name' at row 1

Видимо - какая-то проблема с кодировкой или я просто очень глупый.

Молю о помощи братьев старших
  • Вопрос задан
  • 457 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Неправильная кодировка столбца таблицы и/или соединения с сервером.
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Попробуйте выполнить команды вроде
ALTER DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE tablename CHARACTER SET utf8 COLLATE utf8_general_ci;

в консоли mysql сервера
dbname и tablename свои только подставьте...
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
26 дек. 2024, в 14:50
2000 руб./за проект
26 дек. 2024, в 14:40
15000 руб./за проект
26 дек. 2024, в 14:27
100000 руб./за проект