import os import re import unicodedata import unidecode def sanitize_filename(filename): # Remove acentos filename = ''.join( c for c in unicodedata.normalize('NFD', filename) if unicodedata.category(c) != 'Mn' ) # Converter para minúsculas e substituir espaços por '-' filename = filename.lower().replace(' ', '-') return filename def fix_canonical_tags(directory): for root, _, files in os.walk(directory): for file in files: if file.endswith(".html"): filepath = os.path.join(root, file) with open(filepath, 'r', encoding='utf-8') as f: content = f.read() # Expressão para encontrar a tag canonical pattern = re.compile(r'', re.IGNORECASE) filename = os.path.basename(file) new_url = f"https://www.desentupidoraalkatec.com.br/{sanitize_filename(filename)}" new_canonical = f'' if pattern.search(content): # Substituir URL canônica existente new_content = pattern.sub(new_canonical, content) else: # Adicionar canonical antes da se não existir new_content = re.sub(r'()', f' {new_canonical}\n\1', content, flags=re.IGNORECASE) # Sobrescrever o arquivo apenas se houver mudanças if new_content != content: with open(filepath, 'w', encoding='utf-8') as f: f.write(new_content) print(f"Corrigido: {filepath}") # Nome do arquivo modelo modelo = "desentupidora-londrina.html" # Verifica se o arquivo modelo existe if not os.path.exists(modelo): print(f"Erro: O arquivo '{modelo}' não foi encontrado.") exit() # Solicita as cidades ao usuário cidades = input("Digite as cidades separadas por vírgula: ").strip().split(",") # Processa as cidades for cidade in cidades: cidade_formatada = cidade.strip().title() # Capitaliza corretamente cidade_url = unidecode.unidecode(cidade_formatada).lower().replace(" ", "-") # Remove acentos e formata nome_arquivo = f"desentupidora-{cidade_url}.html" with open(modelo, "r", encoding="utf-8") as arquivo: conteudo = arquivo.read() # Substitui "Londrina" pelo nome da cidade formatada conteudo = conteudo.replace("Londrina", cidade_formatada) # Atualiza a URL canonical corretamente nova_url = f"https://desentupidoraalkatec.com.br/{nome_arquivo}" conteudo = conteudo.replace( '', f'' ) # Cria o novo arquivo with open(os.path.join("C:\\Users\\lucas\\Downloads\\titealkateccorreção", nome_arquivo), "w", encoding="utf-8") as novo_arquivo: novo_arquivo.write(conteudo) print(f"Arquivo '{nome_arquivo}' criado com sucesso.") print("Processo concluído!") # Defina o diretório onde estão os arquivos HTML project_directory = r"C:\Users\lucas\Downloads\titealkateccorreção" fix_canonical_tags(project_directory)