Петр, каким образом это сделать? до этого все работало, я просто вверху писал кодировку, и все.
Скрипт не ругался на русский, но когда начал взаймодействие с другим , он просто крашит
Петр, господи, извиняюсь конечно
в чем моя проблема : каждый раз когда список слов пополняется, скрипт отказывается работать поскольку оно не сохранено в utf-8, можно ли как-то автоматизировать этот процесс?
Петр, без понятия так ли мне надо
у меня есть функция которая записывает слова в файл (сильно в нее я думаю не стоит вдаваться, но я скину все же код
reply_message = vk.messages.getById(message_ids=event.message_id)
print('*Кто-то пополнил словарь*')
print('-----------------------')
slv = reply_message['items'][0]['text']
slovas = []
with open('slovar.py', 'r') as f:
old_data = f.read()
new_data = old_data.replace(']',' ')
f.close()
slovas.append(slv)
with open('slovar.py', 'w') as f:
f.write(new_data)
f.close()
slovas.append(slv)
slovas = []
with open('slovar.py', 'a') as f:
f.write('\n"' + slv + '",]')
f.close()
slovas.append(slv)
time.sleep(2)
понимаю ваш логичный вопрос : "а че ты в питон файл то записываешь?" - я вызываю слова из списка с помощью
(slova.pop(random.randint(2, len(slova)-1)))
и если хранить в .txt, то оно не пашет
это библиотека vk api
так вот, сохраняю в ютф через нотепад++, запускаю
добавляю слово в словарь, проверяю - работает
убиваю процесс (ну просто шелл выключаю)
запускаю, и вот такие приколы :
SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xf1 in position 1: invalid continuation byte
p.s.: копался все это время, хотел что-то придумать, пробовал ваш код, но мне не особо помогло
я даже не пойму в чем его проблема то и почему так, там же есть кодировка, печально лишь то что она сбрасывается при перезаписи каждый раз (а бот то и лечь может по 1-й из миллиона причин, та же капча)
MinTnt, ну я не всегда надеюсь на то что мне ответят, поэтому я могу спокойно весь день положить чтобы в тупую сидеть и разбирать проблему по крупицам)