- Frontend React (SKEEN Brand) con Vite, TypeScript, Tailwind - Frontend Homenest (versión alternativa) - Módulos Odoo 17 custom (citas, pacientes, monedero, pagos, ventas, inventario, whatsapp) - WACRM fork (Next.js 16 + Supabase) - Hermes + Bridge + Skills (Qwen3.6 via Nan Builders) - Scripts de migración y operación - Documentación extensiva en docs/
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
import requests
|
|
from bs4 import BeautifulSoup
|
|
import re
|
|
|
|
BASE = 'https://sistema.skeenmx.app'
|
|
USERNAME = 'JoseSkeen'
|
|
PASSWORD = 'SKr#902_88'
|
|
|
|
session = requests.Session()
|
|
r = session.get(f'{BASE}/login', timeout=30)
|
|
soup = BeautifulSoup(r.text, 'html.parser')
|
|
token = soup.find('input', {'name': '_token'})
|
|
token = token['value'] if token else ''
|
|
|
|
session.post(f'{BASE}/login', data={
|
|
'_token': token,
|
|
'username': USERNAME,
|
|
'password': PASSWORD,
|
|
}, timeout=30, allow_redirects=True)
|
|
|
|
# Paciente 5 tiene historia clínica más completa
|
|
r = session.get(f'{BASE}/expediente/ver/5', timeout=30)
|
|
soup = BeautifulSoup(r.text, 'html.parser')
|
|
|
|
# Buscar divs/cards con clase que contengan historia clínica
|
|
# Imprimir estructura de inputs/checkboxes con sus labels cercanos
|
|
for div in soup.find_all(['div', 'section']):
|
|
text = div.get_text(separator=' ', strip=True)
|
|
if any(k in text.lower() for k in ['embarazada', 'lactancia', 'anticonceptivo', 'hijos', 'cirugías', 'varicosas', 'migraña', 'agujas', 'alergias', 'medicamentos', 'enfermedades crónicas']):
|
|
print('---DIV---')
|
|
print(text[:1000])
|
|
print('---')
|