Я пытаюсь написать консольный скрипт для обработки некоторых видеороликов и их автоматической загрузки. Используя мою учетную запись разработчика vimeo, я создал приложение. Каждый раз, когда я загружаюсь, он будет с учетной записью этого пользователя. Я запросил и получил разрешение на загрузку через этот аккаунт.подключение к vimeo с xauth в python
Я предполагаю, что мне нужно подключиться к api через xAuth, так как я не смогу получить строку верификатора oauth из обратного URL-адреса.
У меня есть код python, пытающийся войти в систему, но я продолжаю получать 400 Bad Request - Отсутствует необходимый параметр - Отсутствует требуемый параметр.
import oauth2 as oauth
consumer = oauth.Consumer(client_id, client_secret)
client = oauth.Client(consumer)
client.add_credentials('email', 'password')
client.authorizations
creds = {'Authorization': 'Basic', 'x_auth_username': 'email', 'xauth_password': 'password'}
params = {}
params['x_auth_mode'] = 'client_auth'
params['x_auth_permission'] = 'write'
params['x_auth_username'] = 'email'
params['x_auth_password'] = 'password'
client.set_signature_method = oauth.SignatureMethod_HMAC_SHA1()
resp, token = client.request('https://vimeo.com/oauth/access_token',
method='POST', body=urllib.urlencode(params),headers=urllib.urlencode(creds))
Гах, я уверен, что это проблема. Я дам ему шанс, когда вернусь к коду. Я очень хочу, чтобы это было зарегистрировано где-то на сайте API Vimeo. – shelbydz
Хорошо, с приведенным выше кодом я получаю «Декодер не смог обработать XXXX с данными, возвращенными провайдером. Может понадобиться другой декодер». Я передаю access_token и access_token_secret, которые Vimeo предоставил мне, когда я создал приложение. Я ** не ** звоню в службу, чтобы сначала получить oauth_verifier. Я бы хотел избежать этого, если это возможно. Кажется, что те возвращенные жетоны истекают через несколько часов. – shelbydz
Я не могу, для жизни меня, заставить xauth работать. Но я думаю, что ** я получил повторное использование сеанса, собранное вместе с некоторыми из ваших опубликованных примеров. Первый раз, когда я должен позвонить service.get_auth_session. Потяните access_token и access_token_secret для последующего использования. в следующий раз вызовите 'session.get_session', передав в сохраненные токены. Я думал, что делаю это раньше, но я хранил проверку oauth и просил повторить аутентификацию. – shelbydz