116 lines
4.9 KiB
Python
Executable File
116 lines
4.9 KiB
Python
Executable File
"""
|
||
openai_tts.py
|
||
|
||
Author: Descomplicar® Crescimento Digital
|
||
Link: https://descomplicar.pt
|
||
Copyright: 2025 Descomplicar®
|
||
"""
|
||
|
||
# OpenAI TTS Generator for Descomplicar
|
||
# pip install openai
|
||
|
||
import os
|
||
from openai import OpenAI
|
||
from pathlib import Path
|
||
|
||
def generate_audio_openai():
|
||
"""
|
||
Gera áudio usando OpenAI TTS API
|
||
"""
|
||
# Configurar cliente OpenAI
|
||
client = OpenAI(
|
||
api_key=os.environ.get("OPENAI_API_KEY")
|
||
)
|
||
|
||
# Texto do artigo de Marketing Digital da Descomplicar
|
||
texto_marketing = """A Estratégia Definitiva para Crescer o Seu Negócio
|
||
|
||
No século 21, o mercado já não é um lugar físico; é um ecossistema digital em constante evolução. Os seus clientes não estão apenas a passar à porta da sua loja; estão a pesquisar no Google, a pedir recomendações no Facebook, a descobrir marcas no Instagram e a procurar especialistas no LinkedIn. Neste novo paradigma, ter uma presença digital não é uma opção. É a base sobre a qual os negócios modernos são construídos e escalados. Bem-vindo ao universo do Marketing Digital.
|
||
|
||
Para muitas empresas em Portugal, o termo Marketing Digital pode parecer um labirinto complexo e intimidante de acrónimos como SEO, PPC e CRM, plataformas e táticas que mudam a uma velocidade vertiginosa. É fácil sentir-se sobrecarregado e não saber por onde começar, o que muitas vezes leva a ações descoordenadas – um post aqui, um anúncio ali – com poucos ou nenhuns resultados mensuráveis. O problema não está nas ferramentas, mas na ausência de uma estratégia coesa que as una.
|
||
|
||
Este guia é o seu mapa para esse labirinto. O nosso objetivo é desmistificar o Marketing Digital, transformando-o de uma coleção de táticas isoladas numa metodologia de crescimento integrada e compreensível. Vamos explorar cada pilar, desde a fundação estratégica até à execução tática e à medição do sucesso. Na Descomplicar, a nossa filosofia é que o marketing de sucesso não é sobre fazer tudo, mas sobre fazer as coisas certas, da forma certa, e na ordem certa."""
|
||
|
||
print("🎙️ Iniciando geração de áudio com OpenAI TTS...")
|
||
print(f"📝 Texto tem {len(texto_marketing)} caracteres")
|
||
|
||
try:
|
||
# Fazer request à OpenAI TTS API
|
||
response = client.audio.speech.create(
|
||
model="tts-1-hd", # Modelo de alta qualidade
|
||
voice="nova", # Voz feminina natural
|
||
input=texto_marketing,
|
||
response_format="mp3"
|
||
)
|
||
|
||
# Salvar o áudio
|
||
speech_file_path = Path("descomplicar_marketing_digital.mp3")
|
||
with open(speech_file_path, "wb") as f:
|
||
f.write(response.content)
|
||
|
||
print(f"✅ Áudio gerado com sucesso: {speech_file_path}")
|
||
print(f"📁 Ficheiro salvo em: {speech_file_path.absolute()}")
|
||
|
||
return True
|
||
|
||
except Exception as e:
|
||
print(f"❌ Erro ao gerar áudio: {e}")
|
||
return False
|
||
|
||
def generate_audio_test():
|
||
"""
|
||
Teste rápido com texto menor
|
||
"""
|
||
client = OpenAI(
|
||
api_key=os.environ.get("OPENAI_API_KEY")
|
||
)
|
||
|
||
texto_teste = """Bem-vindo à Descomplicar, a agência de aceleração digital que transforma a sua presença online numa máquina de crescimento.
|
||
|
||
Somos especialistas em Marketing Digital, criação de websites profissionais e estratégias que geram resultados reais para o seu negócio.
|
||
|
||
Na Descomplicar, a nossa filosofia é simples: tornar o complexo mais simples. Descomplicamos o marketing digital para que você se possa focar no que faz melhor - gerir o seu negócio."""
|
||
|
||
print("🧪 Testando OpenAI TTS com texto pequeno...")
|
||
|
||
try:
|
||
response = client.audio.speech.create(
|
||
model="tts-1", # Modelo standard (mais rápido)
|
||
voice="nova", # Voz feminina
|
||
input=texto_teste,
|
||
response_format="mp3"
|
||
)
|
||
|
||
speech_file_path = Path("descomplicar_teste.mp3")
|
||
with open(speech_file_path, "wb") as f:
|
||
f.write(response.content)
|
||
|
||
print(f"✅ Teste concluído: {speech_file_path}")
|
||
return True
|
||
|
||
except Exception as e:
|
||
print(f"❌ Erro no teste: {e}")
|
||
return False
|
||
|
||
if __name__ == "__main__":
|
||
# Verificar se API key está configurada
|
||
if not os.environ.get("OPENAI_API_KEY"):
|
||
print("❌ OPENAI_API_KEY não configurada!")
|
||
print("Configure com: export OPENAI_API_KEY='sua_chave'")
|
||
exit(1)
|
||
|
||
print("🤖 Gerador de Voz OpenAI - Descomplicar")
|
||
print("=" * 50)
|
||
|
||
# Escolher entre teste ou completo
|
||
escolha = input("Escolha: (t)este pequeno ou (c)ompleto? [t/c]: ").lower()
|
||
|
||
if escolha == 'c':
|
||
print("\n🎯 Gerando áudio completo...")
|
||
generate_audio_openai()
|
||
else:
|
||
print("\n🧪 Gerando teste...")
|
||
generate_audio_test()
|
||
|
||
print("\n📁 Ficheiros MP3 gerados na pasta atual")
|