Я с трудом пытаюсь пройти аутентификацию в Google Document Translation API. Этот API не принимает ключ API. Как ни странно, похоже, вам необходимо указать путь к файлу json в виде строки в os.environ["GOOGLE_APPLICATION_CREDENTIALS"]. У меня есть файл json из моей корпоративной учетной записи, но мне кажется очень небезопасным хранить кучу секретов в файле рядом с моим кодом. Поэтому я попытался найти другие способы аутентификации. Одним из способов, который я видел в комментарии к переполнению стека, был такой подход. По сути, вы берете каждый из секретов в файле .json, загружаете его как секрет обычным способом обработки секретов, затем упаковываете их в словарь и сохраняете в переменной, называемой учетными данными. Когда я запускаю это, он говорит: «google.auth.Exceptions.DefaultCredentialsError: ваши учетные данные по умолчанию не найдены».
Есть ли какой-то шаг, который я здесь пропустил? Нужно ли мне каким-то образом передать переменную «credentials» чему-то другому?
Я знаю, что не могу просто передать переменную «credentials» в os.environ['GOOGLE_APPLICATION_CREDENTIALS'], потому что это будет только принять путь к файлу, структурированный в виде строки.
Будем благодарны за любую помощь.
project_id = REDACTED
file_path = REDACTED
target_language = 'en'
my_google_credentials = {
"type": os.environ.get('TYPE'),
"project_id": os.environ.get('PROJECT_ID'),
"private_key_id": os.environ.get('PRIVATE_KEY_ID'),
"private_key": os.environ.get['private_key'],
"universe_domain": os.environ.get('UNIVERSE_DOMAIN'),
"token_uri": os.environ.get('TOKEN_URI'),
"client_email": os.environ.get('CLIENT_EMAIL'),
"client_id": os.environ.get('CLIENT_ID'),
"auth_uri": os.environ.get('AUTH_URI'),
"auth_provider_x509_cert_url": os.environ.get('AUTH_PROVIDER_x509_CERT_URL'),
"client_x509_cert_url": os.environ.get('CLIENT_x509_CERT_URL')
}
credentials = service_account.Credentials.from_service_account_info(my_google_credentials)
#scoped_credentials = credentials.with_scopes(['https://www.googleapis.com/auth/cloud-platform'])
response = translate_document(project_id, file_path, target_language)
print("Translation completed.")
Подробнее здесь: https://stackoverflow.com/questions/791 ... nslate-api
Аутентификация в Google Doc Translate API ⇐ Python
Программы на Python
1731770440
Anonymous
Я с трудом пытаюсь пройти аутентификацию в Google Document Translation API. Этот API не принимает ключ API. Как ни странно, похоже, вам необходимо указать путь к файлу json в виде строки в os.environ["GOOGLE_APPLICATION_CREDENTIALS"]. У меня есть файл json из моей корпоративной учетной записи, но мне кажется очень небезопасным хранить кучу секретов в файле рядом с моим кодом. Поэтому я попытался найти другие способы аутентификации. Одним из способов, который я видел в комментарии к переполнению стека, был такой подход. По сути, вы берете каждый из секретов в файле .json, загружаете его как секрет обычным способом обработки секретов, затем упаковываете их в словарь и сохраняете в переменной, называемой учетными данными. Когда я запускаю это, он говорит: «google.auth.Exceptions.DefaultCredentialsError: ваши учетные данные по умолчанию не найдены».
Есть ли какой-то шаг, который я здесь пропустил? Нужно ли мне каким-то образом передать переменную «credentials» чему-то другому?
Я знаю, что не могу просто передать переменную «credentials» в os.environ['GOOGLE_APPLICATION_CREDENTIALS'], потому что это будет только принять путь к файлу, структурированный в виде строки.
Будем благодарны за любую помощь.
project_id = REDACTED
file_path = REDACTED
target_language = 'en'
my_google_credentials = {
"type": os.environ.get('TYPE'),
"project_id": os.environ.get('PROJECT_ID'),
"private_key_id": os.environ.get('PRIVATE_KEY_ID'),
"private_key": os.environ.get['private_key'],
"universe_domain": os.environ.get('UNIVERSE_DOMAIN'),
"token_uri": os.environ.get('TOKEN_URI'),
"client_email": os.environ.get('CLIENT_EMAIL'),
"client_id": os.environ.get('CLIENT_ID'),
"auth_uri": os.environ.get('AUTH_URI'),
"auth_provider_x509_cert_url": os.environ.get('AUTH_PROVIDER_x509_CERT_URL'),
"client_x509_cert_url": os.environ.get('CLIENT_x509_CERT_URL')
}
credentials = service_account.Credentials.from_service_account_info(my_google_credentials)
#scoped_credentials = credentials.with_scopes(['https://www.googleapis.com/auth/cloud-platform'])
response = translate_document(project_id, file_path, target_language)
print("Translation completed.")
Подробнее здесь: [url]https://stackoverflow.com/questions/79159788/authenticating-to-google-doc-translate-api[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия