Как исправить ошибку, не могу создать платеж в sdk yookassa для python

Рейтинг: 0Ответов: 1Опубликовано: 16.08.2023

Как исправить ошибку, не могу создать платеж в sdk yookassa для python, когда запускаю скрипт на удаленном сервере. ssl сертификат есть.

  File "/home/nikolay/tg_bot_predictor/PAYMENT.py", line 43, in 
create_pay
res = Payment.create(request)
File "/usr/local/lib/python3.8/dist-packages/yookassa/payment.py", 
line 58, in create
response = instance.client.request(HttpVerb.POST, path, None, headers, params_object)
File "/usr/local/lib/python3.8/dist-packages/yookassa/client.py", line 38, in request
raw_response = self.execute(body, method, path, query_params, request_headers)
File "/usr/local/lib/python3.8/dist-packages/yookassa/client.py", line 46, in execute
session = self.get_session()
File "/usr/local/lib/python3.8/dist-packages/yookassa/client.py", line 56, in get_session
retries = Retry(total=self.max_attempts,
TypeError: __init__() got an unexpected keyword argument 'allowed_methods'

Вот код модуля где выдает ошибку.

def get_session(self):
    session = requests.Session()
    retries = Retry(total=self.max_attempts,
                    backoff_factor=self.timeout / 1000,
                    allowed_methods=['POST'],
                    status_forcelist=[202])
    session.mount('https://', HTTPAdapter(max_retries=retries))
    return session

Код выдает ошибку ток при запуске на сервере. При запуске у себя на компьютере проблем нету

Ответы

▲ 0Принят

В общем надо открыть файл по пути

/usr/local/lib/python3.8/dist-packages/yookassa/client.py в

и удалить из

    def get_session(self):
        session = requests.Session()
        retries = Retry(total=self.max_attempts,
                        backoff_factor=self.timeout / 1000,
                        allowed_methods=['POST'],
                        status_forcelist=[202])
        session.mount('https://', HTTPAdapter(max_retries=retries))
        return session

строчку allowed_methods=['POST'] Тогда все работает