c165f2f788
Agrega 19 issues técnicas documentando funcionalidades implementadas y pendientes. Issues completadas (movidas a dev/issues/completed/): - 001-conversor-web-markdown.md - 002-accessibility-tree.md - 003-gestion-cookies-perfil.md - 004-gestion-extensiones-chrome.md - 005-eliminar-timeouts-innecesarios.md Issues implementadas: - 006-manejo-tabs-ventanas.md - 016-manejo-iframes.md - 017-actions-api.md - 018-file-uploads.md - 019-expected-conditions-mejoradas.md Issues pendientes (media prioridad): - 007-alert-prompt-confirm-handling.md - 008-screenshot-elementos-especificos.md - 009-pdf-generation.md - 010-device-emulation-completo.md - 011-downloads-handling.md Issues pendientes (baja prioridad / avanzado): - 012-browser-contexts-multi-sesion.md - 013-video-recording.md - 014-network-mocking-avanzado.md - 015-geolocation-permissions.md Incluye también dev/NUEVAS_FUNCIONALIDADES.md con resumen completo. Directorio: dev/
1.8 KiB
1.8 KiB
Issue #001: Conversor de página web a markdown
Tipo: Enhancement Prioridad: Media Estado: Pendiente
Descripción
Implementar utilidad para convertir el contenido HTML de una página web a formato Markdown.
Funcionalidad deseada
- Convertir títulos (h1-h6) a markdown (#, ##, ###, etc.)
- Convertir enlaces a formato
[texto](url) - Convertir imágenes a formato
 - Convertir listas (ol, ul) a markdown
- Convertir tablas a markdown
- Mantener estructura de párrafos
- Extraer texto limpio sin CSS/JS inline
- Opción para incluir/excluir imágenes
- Manejar código y bloques de código (pre, code)
- Preservar énfasis (bold, italic)
Implementación técnica
Archivo sugerido
pkg/browser/markdown.go
API propuesta
// ToMarkdown convierte el contenido de la página actual a Markdown
func (b *Browser) ToMarkdown(ctx context.Context, opts *MarkdownOptions) (string, error)
type MarkdownOptions struct {
Selector string // Selector CSS opcional para convertir solo una parte
IncludeImages bool // Incluir imágenes en el output
IncludeLinks bool // Incluir enlaces
BaseURL string // URL base para enlaces relativos
}
Estrategia
- Obtener HTML con
GetHTML() - Parsear HTML usando
golang.org/x/net/html - Convertir nodos recursivamente a markdown
- Alternativamente, ejecutar JS en el navegador con biblioteca turndown
Librerías potenciales
github.com/JohannesKaufmann/html-to-markdown- Conversor Go nativo- O ejecutar
turndown.jsvíaEvaluate()para mayor fidelidad
Casos de uso
- Extraer contenido de artículos de blog
- Scraping de documentación
- Generar datasets para LLMs
- Archivar contenido web
Referencias
- Turndown: https://github.com/mixmark-io/turndown
- html-to-markdown Go: https://github.com/JohannesKaufmann/html-to-markdown