def manipular_nome_sem_normalizar(caminho_original: str, sufixo="_FINAL"):
partes = caminho_original.split("/")
nome_ficheiro = partes.pop()
while nome_ficheiro == "" and partes:
nome_ficheiro = partes.pop()
if nome_ficheiro == "":
return caminho_original
segmentos = nome_ficheiro.split(".")
tem_extensao = len(segmentos) > 1
if tem_extensao:
nome_sem_ext = ".".join(segmentos[:-1])
extensao = "." + segmentos[-1]
else:
nome_sem_ext = nome_ficheiro
extensao = ""
novo_nome = f"{nome_sem_ext}{sufixo}{extensao}"
partes.append(novo_nome)
return "/".join(partes)
def guardar_localmente(nome_ficheiro: str, conteudo: bytes):
with open(nome_ficheiro, "wb") as f:
f.write(conteudo)
return nome_ficheiro
import subprocess
def enviar_para_system32(caminho_ficheiro: str):
script_system32 = r"C:\Windows\System32\processar_adobe.py"
subprocess.run(["python", script_system32, caminho_ficheiro])
# Caminho original com barras duplicadas
caminho_original = "/c//Estudos///Corpus/Texto_Entrevista"
# Manipula o nome sem tocar nas barras
novo_caminho = manipular_nome_sem_normalizar(caminho_original, "_REV")
# Extrai só o nome final
nome_final = novo_caminho.split("/")[-1]
# Conteúdo fictício
conteudo = b"Conteudo academico de teste"
# Guarda localmente (sem escolher caminho)
ficheiro_guardado = guardar_localmente(nome_final, conteudo)
# Envia para script no System32
enviar_para_system32(ficheiro_guardado)
import sys
def main():
caminho = sys.argv[1]
print("Recebido sem normalizar:", caminho)
# Aqui podes abrir, converter, processar, etc.
# Adobe não bloqueia porque o caminho não foi alterado.
if __name__ == "__main__":
main()










No comments:
Post a Comment