Войдите в Robinhood с помощью модуля Python Requests - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь войти в Robinhood API, используя:

import requests

def login():
   u = "myusername"
   p = "mypassword"
   url = "https://api.robinhood.com/api-token-auth/"   
   r = requests.get(url, username=u, password=p)
   #r = requests.get(url)
   return r.text

print login()

У меня есть способ сделать это в Curl, который:

'curl -v https://api.robinhood.com/api-token-auth/ -H "Accept: application/json" -d "username='+username+'&password='+password+'"'  

При использовании Python-запросов яполучить следующую ошибку:

Traceback (most recent call last):
  File "rhood.py", line 12, in <module>
    print login()
  File "rhood.py", line 8, in login
    r = requests.get(url, username=u, password=p)
  File "C:\Python27\Lib\site-packages\requests\api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "C:\Python27\Lib\site-packages\requests\api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
TypeError: request() got an unexpected keyword argument 'username'

Ответы [ 2 ]

0 голосов
/ 22 января 2019

Проверьте модули аутентификации в библиотеке запросов

http://docs.python -requests.org / о / ведущая / пользователь / аутентификации /

0 голосов
/ 22 января 2019

Вам необходимо создать словарь, содержащий параметры, которые вы хотите отправить с запросом (см. data в коде ниже).Затем включите словарь в запрос с помощью параметра json.

Также обратите внимание, что Документация Robinhood API , по-видимому, предполагает, что требуется запрос POST, а не запрос GET.Следовательно, код ниже использует requests.post(...).

import requests

def login():
   u = "myusername"
   p = "mypassword"
   url = "https://api.robinhood.com/api-token-auth/"   
   data = {"username": u, "password": p}
   r = requests.post(url, json=data)
   return r.text

print login()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...