Python:
from typing import Dict, Any, List
import requests
import os
# Проверьте наличие файла с API-ключом
if not os.path.exists('authorized_key.json'):
print("Файл authorized_key.json не найден ")
exit()
with open('authorized_key.json') as f:
YANDEX_API_KEY = f.read().strip()
YANDEX_TRANSLATE_URL = "https://translate.api.cloud.yandex.net/translate/v2/translate"
FOLDER_ID = 'aje2t1t5k79l9fbqjja3'
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {YANDEX_API_KEY}',
}
# ФУНКЦИЯ ПЕРЕВОДА ТЕКСТА
def translate_text_yandex(original_text, target_language='ru'):
'''
я закоментировал варианты кода который не пропустил пайчарм и написал новый
-----------------------------------------------
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {YANDEX_API_KEY}',
}
-----------------------------------------------
body = {
"targetLanguageCode": target_language,
"texts": [original_text],
"folderId": FOLDER_ID
}
body = {
'source': source_language,
'target': target_language,
'text': document_content,
'folderId': FOLDER_ID,
}
'''
body = dict(targetLanguageCode=target_language, texts=[original_text], folderId=FOLDER_ID)
try:
response = requests.post(YANDEX_TRANSLATE_URL, headers=headers, json=body)
response.raise_for_status() # Raises an HTTPError for bad responses
return response.json()['translations'][0]['text']
except requests.exceptions.RequestException as e:
print(f"Ошибка перевода: {e}")
return None
'''
-----------------------------------
response = requests.post(YANDEX_TRANSLATE_URL, headers=headers, json=body)
if response.status_code == 200:
return response.json()['translations'][0]['text']
else:
print(f"Ошибка перевода: {response.status_code} - {response.text}")
return None
-------------------------------------
'''
# ЦИКЛ ЗАПРОС ЧИСЛА или на выход
while True:
user_input = input("Введите число (или 'exit' для выхода): ")
if user_input.lower() == 'exit':
print("Выход из программы.")
break
# валидация
if not user_input.isdigit():
print("Пожалуйста, введите действительное число.")
continue
# Формируем URL с введенным числом
url = f'http://numbersapi.com/{user_input}'
# Выполняем GET-запрос
response = requests.get(url)
# Проверяем статус код ответа
if response.status_code == 200:
# Получаем текст ответа
original_text = response.text
# Переводим текст на русский язык, используя Yandex API
translated_text = translate_text_yandex(original_text, target_language='ru')
# Выводим переведенный текст
if translated_text:
print(translated_text)
else:
print(f"Ошибка: {response.status_code}")