Я новичок в Python и начинаю играть, чтобы получить доступ к различным API, и теперь я получил API Dropbox. Но я получаю доступ «invalid_grant», когда пытаюсь получить доступ к своей учетной записи.dropbox.rest.ErrorResponse: [400] 'invalid_grant'
import dropbox
app_key = 'AAAA'
app_secret = 'BBBB'
flow = dropbox.client.DropboxOAuth2FlowNoRedirect(app_key, app_secret)
authorize_url = flow.start()
print ('1. Go to: ' + authorize_url)
print ('2. Click "Allow" (you might have to log in first)')
print ('3. Copy the authorization code.')
code = 'CCCC'
access_token, user_id = flow.finish(code)
Когда я запустил этот скрипт, я получил следующий вывод.
Traceback (самый последний вызов последнего): Файл "PATH/dropboxdownload.py", строка 14, в access_token, user_id = flow.finish (код) Файл «PATH \ Python35-32 \ Lib \ site-packages \ dropbox-2.2.0-py3.5.egg \ dropbox \ client.py ", строка 1398, в конце return self._finish (код, нет) Файл" PATH \ Python35-32 \ lib \ site -packages \ dropbox-2.2.0-py3.5.egg \ dropbox \ client.py ", строка 1265, в _finish response = self.rest_client.POST (url, params = params) Файл" PATH \ Python35-32 \ lib \ site-packages \ dropbox-2.2.0-py3.5.egg \ dropbox \ rest.py ", строка 316, в POST return cls.IMPL.POST (* n, ** kw) Файл «PATH \ Python35-32 \ lib \ site-packages \ dropbox-2.2.0-py3.5.egg \ dropbox \ rest.py», строка 254, в POST post_params = params, headers = headers, raw_response = raw_response) Файл «PATH \ Python35-32 \ lib \ site-packages \ dropbox-2.2.0-py3.5.egg \ dropbox \ rest.py», строка 227, в запросе raise ErrorResponse (r, r.read()) dropbox.rest.ErrorResponse: [400] 'invalid_grant' Процесс закончил с кодом выхода 1
Я предполагаю, что AAAA, BBBB и CCCC не являются реальными значениями, но вы на самом деле жестко кодируете значение для кода? Это действительно должно быть ценностью, которую пользователь получает с веб-сайта. Если у вас уже есть * токен доступа *, который вы хотите использовать, просто пропустите весь этот код и назначьте ему «access_token» и перейдите к нему. – smarx
Привет, Это правильно, AAAA, BBBB и CCCC - это поддельные значения, когда я публиковал код в Интернете. Но на самом деле это всего лишь тестовый скрипт, когда я, наконец, получил запрос, я думаю, что могу действительно делать то, что хочу. Но, чтобы дать вам дополнительную информацию, я попытаюсь создать файл в Dropbox, и я хочу загрузить его один раз в день и загрузить его в свой скрипт Tweppy Python, чтобы я мог легко добавлять новые хэш-теги и он будет автоматически обновлять мой фильтр Tweppy. –
Я нашел проблему со сценарием, но это не решило мою проблему. Теперь я могу получить информацию о моей учетной записи, но мне нужно назначить новый код авторизации каждый раз, когда я запускаю скрипт Python. Мне нужен способ, которым я могу загрузить этот файл один раз в день без необходимости входа в Dropbox и получения нового кода авторизации. Thanks Christian –