Да, можно, если файл короткий. Длинные нужно размещать в облаке. Инструкции же есть в яндексе.
import urllib.request
import json
import requests
import time
import pprint
FOLDER_ID = "......." # Идентификатор каталога, даётся при регистрации на яндекс-платформе
IAM_TOKEN = "..........." # IAM-токен, даётся при регистрации на яндекс-платформе
path1="C:\\work\\"
list1=('4.ogg', '9.ogg')
def short_audio (list1, path1): #берёт ogg-файлы по списку list1, файлы лежат в директории path1
for a in list1:
with open(path1+a, "rb") as f:
data = f.read()
params = "&".join([
"topic=general",
"folderId=%s" % FOLDER_ID,
"lang=ru-RU"
])
print ("params=", params, "data",data)
url = urllib.request.Request("https://stt.api.cloud.yandex.net/speech/v1/stt:recognize?%s" % params, data=data) #пересылает содержимое ogg
url.add_header("Authorization", "Bearer %s" % IAM_TOKEN)
print (url)
responseData = urllib.request.urlopen(url).read().decode('UTF-8')
decodedData = json.loads(responseData)
if decodedData.get("error_code") is None:
print(decodedData.get("result"))
return
short_audio(list1, path1)