Страница 8 из 9
Добавлено: Пт, 8 сентября 2023, 14:33:31
dyvniy
https://stackoverflow.com/questions/19078969/pyth ... folder-in-a-cross-platform-wayКод: Выделить всё
import sys
import pathlib
def get_datadir() -> pathlib.Path:
"""
Returns a parent directory path
where persistent application data can be stored.
# linux: ~/.local/share
# macOS: ~/Library/Application Support
# windows: C:/Users/<USER>/AppData/Roaming
"""
home = pathlib.Path.home()
if sys.platform == "win32":
return home / "AppData/Roaming"
elif sys.platform == "linux":
return home / ".local/share"
elif sys.platform == "darwin":
return home / "Library/Application Support"
my_datadir = get_datadir() / "program-name"
try:
my_datadir.mkdir(parents=True)
except FileExistsError:
pass
Добавлено: Сб, 23 сентября 2023, 22:03:03
dyvniy
Загрузка видео с YouTube с помощью Python.
python -m pip install pytube
•
https://github.com/pytube/pytubeКод: Выделить всё
from pytube import YouTube
YouTube('https://www.youtube.com/watch?v=513NmkH_0Q8').streams.filter(progressive=True, file_extension='mp4')[0].download()
0 - 360p
1 - 720p
Добавлено: Чт, 16 ноября 2023, 14:35:57
dyvniy
Оффлайн перевод
https://github.com/argosopentech/argos-translatehttps://skeptric.com/python-offline-translation/На русский тоже нормально переводит
Код: Выделить всё
import argostranslate.package
import argostranslate.translate
from_code = "en"
to_code = "ru"
# Download and install Argos Translate package
argostranslate.package.update_package_index()
available_packages = argostranslate.package.get_available_packages()
package_to_install = next(
filter(
lambda x: x.from_code == from_code and x.to_code == to_code, available_packages
)
)
argostranslate.package.install_from_path(package_to_install.download())
# Translate
translatedText = argostranslate.translate.translate("Hello World", from_code, to_code)
print(translatedText)
# '¡Hola Mundo!'
Добавлено: Чт, 16 ноября 2023, 14:36:58
dyvniy
Оффлайн перевод
https://github.com/argosopentech/argos-translatehttps://skeptric.com/python-offline-translation/На русский тоже нормально переводит
Код: Выделить всё
import argostranslate.package
import argostranslate.translate
from_code = "en"
to_code = "ru"
argostranslate.package.update_package_index()
available_packages = argostranslate.package.get_available_packages()
package_to_install = next(
filter(
lambda x: x.from_code == from_code and x.to_code == to_code, available_packages
)
)
argostranslate.package.install_from_path(package_to_install.download())
translatedText = argostranslate.translate.translate("Hello World", from_code, to_code)
print(translatedText)
Добавлено: Чт, 16 ноября 2023, 14:50:49
dyvniy
Сгенерённый текст можно сразу озвучить
https://github.com/elevenlabs/elevenlabs-pythonКод: Выделить всё
from elevenlabs import generate, play
audio = generate(
text="Hello! Привет!",
voice="Bella",
model="eleven_multilingual_v2"
)
play(audio)
Добавлено: Чт, 16 ноября 2023, 14:58:02
dyvniy
А можно распознать то, что сказал. Жаль на английском.
Код: Выделить всё
from pocketsphinx import LiveSpeech
for phrase in LiveSpeech(): print(phrase)
Для русского надо марковские модели ставить.
Например отсюда
https://sourceforge.net/projects/cmusphinx/files/ ... _ru_cont_8k_v3.tar.gz/downloadДля русского. Распознаёт кривовато, надо словарь настраивать, что ли.
Код: Выделить всё
import os
from pocketsphinx import LiveSpeech, get_model_path
model_path = r'E:\doc\txt\zero_ru_cont_8k_v3' speech = LiveSpeech(
verbose=False,
sampling_rate=16000,
buffer_size=2048,
no_search=False,
full_utt=False,
hmm=os.path.join(model_path, 'zero_ru.cd_cont_4000'),
lm=os.path.join(model_path, 'ru.lm'),
dic=os.path.join(model_path, 'ru.dic')
)
print("Say something!")
for phrase in speech:
print(phrase)