Requests - Русские символы в Username веб-сервиса - Python
Формулировка задачи:
Добрый день!
Прошу не судить строго, но столкнулся со следующей проблемой: есть веб-сервис, к которому нужно отправить soap-запрос, вся проблема в том, что username для авторизации в сервисе на русском языке, это приводит к получению
Используется модуль requests
Листинг программы
- b64encode(('%s:%s' % (username, password)).encode('latin1')).strip()
- UnicodeEncodeError: 'latin-1' codec can't encode characters in position 6-15: ordinal not in range(256)
Решение задачи: «Requests - Русские символы в Username веб-сервиса»
textual
Листинг программы
- Traceback (most recent call last):
- File "c:\Python34\ASUER\Scripts\soap.py", line 35, in <module>
- auth=("Test@пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ","12345"))
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\api.py", line 109, in post
- return request('post', url, data=data, json=json, **kwargs)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\api.py", line 50, in request
- response = session.request(method=method, url=url, **kwargs)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\sessions.py", line 451, in request
- prep = self.prepare_request(req)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\sessions.py", line 382, in prepare_request
- hooks=merge_hooks(request.hooks, self.hooks),
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\models.py", line 308, in prepare
- self.prepare_auth(auth, url)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\models.py", line 496, in prepare_auth
- r = auth(self)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\auth.py", line 50, in __call__
- r.headers['Authorization'] = _basic_auth_str(self.username, self.password)
- File "C:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\auth.py", line 30, in _basic_auth_str
- b64encode(('%s:%s' % (username, password)).encode('latin1')).strip()
- UnicodeEncodeError: 'latin-1' codec can't encode characters in position 6-15: ordinal not in range(256)
- Exited with status 1
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д