Этот вопрос закрыт для ответов, так как повторяет вопрос Проблемы с библиотекой logging в python как ее решить?
@toarugakusei

Как заставить работать работать paser написанный для английского?

Пытался парировать игру c Nscripter на Rren'py нашел на github готовый код
работает он так 606453129a582942921069.png
он заменяет все Nscrirptовсие команды на renpyовские 60645321b23b5396798096.png вот только он был написан с расчетом на английский язык и когда пытаешься ему скормит код с русским текстом он начинает на все ругаться
D:\ren'py games\nscripter2renpy-master\src>python parsar.py 0.txt > script2.rpy
Traceback (most recent call last):
  File "parsar.py", line 905, in <module>
    parser.tokenize(input.read())
  File "parsar.py", line 59, in tokenize
    self.tokens = [token for token in lex.scan(content) if token is not None and token.type != "COMMENT"]
  File "parsar.py", line 59, in <listcomp>
    self.tokens = [token for token in lex.scan(content) if token is not None and token.type != "COMMENT"]
  File "D:\ren'py games\nscripter2renpy-master\src\lexer.py", line 49, in __next__
    return self.scan_next()
  File "D:\ren'py games\nscripter2renpy-master\src\lexer.py", line 74, in scan_next
    raise UnknownTokenError(self.input[self._position], self.lineno)
lexer.UnknownTokenError: Line #9866, Found token:

606455f2d70ba336628508.png
он ругается на пробелы я полагаю
если попробовать поменять
input = open(sys.argv[1], 'r', encoding = 'utf-8')
на
input = open(sys.argv[1], 'r', encoding='windows-1251')

то он начинает выдоват
D:\ren'py games\nscripter2renpy-master\src>python parsar.py 0.txt > script2.rpy
Traceback (most recent call last):
  File "parsar.py", line 905, in <module>
    parser.tokenize(input.read())
  File "C:\Users\gama\AppData\Local\Programs\Python\Python38\lib\encodings\cp1251.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 248964: character maps to <undefined>

если перевести кириллицу на латиницу с ним то он начинает ругаться на букву ''И'' 0x98 точки запитые на знак дефиса и все прочее как мне заставить работать с русским текстом ? Код
заранее спасибо за ответ
  • Вопрос задан
  • 81 просмотр
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы