chore(ops): migrate clube67 to newwhats.clube67.com directory
continuous-integration/webhook Falha no deploy de clube67_newwhats.local (VPS 4)
continuous-integration/webhook Falha no deploy de clube67_newwhats.local (VPS 4)
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
const { chromium } = require('playwright');
|
||||
|
||||
(async () => {
|
||||
const browser = await chromium.launch({ headless: false });
|
||||
const context = await browser.newContext({
|
||||
userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36'
|
||||
});
|
||||
|
||||
const page = await context.newPage();
|
||||
|
||||
try {
|
||||
console.log('Realizando login para exploração...');
|
||||
await page.goto('https://viventerisportalcredenciado.topsaudehub.com.br/', { waitUntil: 'networkidle' });
|
||||
await page.fill('#usuario', '0005010');
|
||||
await page.fill('#senha', 'Cclinic#03');
|
||||
await page.click('#login-submit');
|
||||
|
||||
await page.waitForURL('**/AreaLogada**');
|
||||
console.log('Login realizado. Explorando menu...');
|
||||
|
||||
// Esperar o menu carregar
|
||||
await page.waitForTimeout(3000);
|
||||
|
||||
// Listar menus principais
|
||||
const menuNames = ['Tratamento Odontológico', 'Elegibilidade', 'Faturamento', 'Solicitações Diversas'];
|
||||
|
||||
for (const name of menuNames) {
|
||||
console.log(`Clicando no menu: ${name}`);
|
||||
try {
|
||||
await page.click(`text="${name}"`, { timeout: 2000 });
|
||||
await page.waitForTimeout(1000);
|
||||
} catch (e) {
|
||||
console.log(`Erro ao clicar em ${name}: ${e.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
// Tentar clicar em Solicitações Diversas -> Inclusão
|
||||
console.log('Navegando em Solicitações Diversas -> Inclusão...');
|
||||
try {
|
||||
await page.click('text="Solicitações Diversas"');
|
||||
await page.waitForTimeout(500);
|
||||
await page.click('text="Inclusão"');
|
||||
await page.waitForTimeout(2000);
|
||||
console.log('URL após clicar em Inclusão:', page.url());
|
||||
} catch (e) {
|
||||
console.log('Falha ao seguir caminho Inclusão:', e.message);
|
||||
}
|
||||
|
||||
// Listar links com palavras-chave
|
||||
const guiaLinks = await page.evaluate(() => {
|
||||
const keywords = ['guia', 'sadt', 'consulta', 'externa', 'recebimentos', 'faturamento', 'lote'];
|
||||
return Array.from(document.querySelectorAll('a')).map(a => ({
|
||||
text: a.innerText.trim(),
|
||||
href: a.getAttribute('href')
|
||||
})).filter(l => keywords.some(k => l.text.toLowerCase().includes(k)) || keywords.some(k => (l.href || '').toLowerCase().includes(k)));
|
||||
});
|
||||
|
||||
console.log('Links relacionados a guias encontrados:', JSON.stringify(guiaLinks, null, 2));
|
||||
|
||||
// Listar TODOS os links do DOM para ver os caminhos
|
||||
const allLinks = await page.evaluate(() => {
|
||||
return Array.from(document.querySelectorAll('a')).map(a => ({
|
||||
text: a.innerText.trim().replace(/\n/g, ' '),
|
||||
href: a.getAttribute('href'),
|
||||
visible: a.offsetParent !== null
|
||||
}));
|
||||
});
|
||||
|
||||
console.log('--- TODOS OS LINKS ENCONTRADOS (VISÍVEIS E INVISÍVEIS) ---');
|
||||
allLinks.forEach(l => {
|
||||
if (l.text && !l.href.includes('void(0)') && !l.href.startsWith('#')) {
|
||||
console.log(`[${l.visible ? 'VISÍVEL' : 'OCULTO'}] ${l.text} -> ${l.href}`);
|
||||
}
|
||||
});
|
||||
|
||||
// Tirar um "print" da estrutura do menu principal
|
||||
const menuStructure = await page.evaluate(() => {
|
||||
// Tenta encontrar o container principal do menu (geralmente nav ou ul com classes específicas)
|
||||
const nav = document.querySelector('nav, ul.navbar-nav, .sidebar, #menu');
|
||||
return nav ? nav.innerText : 'Container de menu não identificado diretamente';
|
||||
});
|
||||
console.log('Estrutura de texto do menu:', menuStructure);
|
||||
|
||||
} catch (error) {
|
||||
console.error('Erro na exploração:', error);
|
||||
} finally {
|
||||
console.log('Mantendo aberto para inspeção manual por 60 segundos...');
|
||||
await page.waitForTimeout(60000);
|
||||
await browser.close();
|
||||
}
|
||||
})();
|
||||
Reference in New Issue
Block a user