Нужна помощь, пишу программу которая будет проверять правописание текста, по данному исходному коду GitHub - proft/pyspelling: Проверка орфографии для укр, рус, анг языков с помощью Яндекс.Спеллера.
Происходит ошибка в которой я не могу разобраться. Нужна помощь.
Исходный код
import os
import requests
from subprocess import Popen, PIPE
ROOT = os.path.abspath(os.path.dirname(__file__))
ICON_OK = os.path.join(ROOT, 'ok.png')
ICON_ERROR = os.path.join(ROOT, 'error.png')
LANG_TRANS = {'ua': 'uk', 'us': 'en', 'ru': 'ru'}
def get_layout():
""" Get current keyboard layout """
pipe = Popen("setxkbmap -print | grep xkb_symbols | awk -F'+' '{print $2}'", stdout=PIPE, shell=True)
layout = pipe.communicate()[0].strip().decode("utf-8")
return str(layout)
def set_clipboard(text):
""" Set system clipboard to text """
xsel_proc = Popen(['xsel', '-bi'], stdin=PIPE)
xsel_proc.communicate(bytes(text, 'utf-8'))
def get_clipboard():
""" Get text from system clipboard """
return os.popen('xsel').read()
if __name__ == '__main__':
word = get_clipboard()
params = {'text' == 'get_clipboard()', 'lang' == 'LANG_TRANS[get_layout()]'}
r = requests.get('https://speller.yandex.net/services/spellservice.json/checkText', params = params)
if r.status_code == 200:
if len(r.json()) > 0:
out = r.json()[0]
variants = [v for v in out['s']]
set_clipboard(variants[0])
os.system('notify-send -i %(icon)s "%(caption)s" "%(text)s"' % {
'icon': ICON_ERROR,
'caption': word,
'text': '\n'.join(variants)
})
else:
os.system('notify-send -i %(icon)s "%(text)s"' % {
'icon': ICON_OK,
'text': word
})
А вот ошибка
"xsel" �� ���� ����७��� ��� ���譥�
��������, �ᯮ��塞�� �ணࠬ��� ��� ������ 䠩���.
Traceback (most recent call last):
File "C:\Users\User\PycharmProjects\spellchecer\spellchecer.py", line 34, in <module>
r = requests.get('https://speller.yandex.net/services/spellservice.json/checkText', params = params)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\api.py", line 76, in get
return request('get', url, params=params, **kwargs)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\sessions.py", line 528, in request
prep = self.prepare_request(req)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\sessions.py", line 456, in prepare_request
p.prepare(
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\models.py", line 316, in prepare
self.prepare_url(url, params)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\models.py", line 434, in prepare_url
enc_params = self._encode_params(params)
File "C:\Users\User\PycharmProjects\spellchecer\venv\lib\site-packages\requests\models.py", line 97, in _encode_params
for k, vs in to_key_val_list(data):
TypeError: cannot unpack non-iterable bool object
Помогите пожалуйста!