- 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/
39 lines
1.5 KiB
Python
39 lines
1.5 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)
|
|
|
|
# Probar varios IDs directamente
|
|
for pid in [1, 2, 3, 5, 10, 20, 50, 100, 200, 500, 1000]:
|
|
try:
|
|
r = session.get(f'{BASE}/expediente/ver/{pid}', timeout=30)
|
|
soup = BeautifulSoup(r.text, 'html.parser')
|
|
text = soup.get_text(separator='\n')
|
|
if any(k in text.lower() for k in ['riñón', 'rinon', 'embarazada', 'alergias', 'medicamentos', 'cirugías']):
|
|
print(f'\n=== PACIENTE {pid} tiene historia clínica ===')
|
|
lines = [l.strip() for l in text.split('\n') if l.strip()]
|
|
for i, line in enumerate(lines):
|
|
if any(k in line.lower() for k in ['riñón', 'rinon', 'embarazada', 'alergias', 'medicamentos', 'cirugías', 'antecedentes', 'patológicos', 'historia']):
|
|
print(f' {i}: {line}')
|
|
for j in range(max(0, i-3), min(len(lines), i+6)):
|
|
print(f' {j}: {lines[j]}')
|
|
print('---')
|
|
except Exception as e:
|
|
print(f'Error {pid}: {e}')
|