</> Cómo funciona

Palabras relacionadas (campo semántico)

GET
/v1/diccionario/relacionadas
★★☆{ }w1📅

Palabras del mismo campo semántico — la red de asociación del Índice de Contiguidad.

Parámetros

parámetrotipopor defectoqué hace
palabrastring— (obligatorio)la palabra

Cómo funciona (por dentro)

</>Este endpoint es parte de un módulo con más funciones. Ver el módulo completo →

Mapa de funciones

flowchart TD
  MOD[("repositorio")]
  _mvs["_mvs()"]
  relacionadas["relacionadas()"]
  relacionadas --> _mvs
  _mvs -. datos .-> MOD
  classDef red fill:#fde7f0,stroke:#c0397b,color:#7a1e4d;
  class MOD red;

El código

# -*- coding: utf-8 -*-
"""diccionario.py — diccionario semántico: una red de asociación de palabras.

Toda consulta LEMATIZA primero la palabra y busca por el LEMA (no por la forma
concreta), sobre la unidad léxica y sus explicaciones. Se apoya en el Índice de
Contiguidad (palabras del mismo campo semántico están "cerca").

Un solo módulo da servicio a varios endpoints del diccionario: definición, ejemplo,
palabras relacionadas, colocaciones, traducción, audio, clasificación de una frase
y el cruce con los refranes. Todos comparten la misma búsqueda base por lema.
"""

import urllib.parse as _url

_IMG_BASE = "https://diccionario.wordkers.es/media/img/"
_AUDIO_BASE = "https://diccionario.wordkers.es/audio/"

# […consultas al repositorio del diccionario + tabla de idiomas (esquema interno)…]




def _mvs(cur, palabra):
    """Búsqueda BASE: filas unidad+explicación de la palabra (ya lematizada).
    Todas las funciones de abajo parten de aquí."""
    cur.execute(_SQL_MV, (palabra, palabra))
    return cur.fetchall()






def relacionadas(cur, palabra):
    """Palabras relacionadas = las del MISMO campo semántico (mismo subtipo).
    Es el mecanismo del Índice de Contiguidad."""
    rows = _mvs(cur, palabra)
    out = []
    for r in rows:
        rel = []
        if r[5] is not None:                       # r[5] = subtipo (campo semántico)
            cur.execute(_SQL_RELACIONADAS, (r[5], r[2]))
            rel = [x[0] for x in cur.fetchall()]
        out.append({"lema": r[2], "relacionadas": rel})
    return {"palabra": palabra, "encontrado": bool(rows), "resultados": out}

Pruébalo

Llámala con el código a la vista.

Ejemplos con el SDK

curl "https://api.wordkers.com/v1/diccionario/relacionadas?palabra=casa" \
  -H "X-API-Key: TU_CLAVE"

Cómo empezar con el SDK →

¿Quieres que cambie algo, o copiar la lógica para lo tuyo? Sin problema — escríbeme. Lo que ves es el algoritmo; los datos y las claves se quedan en casa.

Wordkers · Catálogo · Empezar · Tu cuenta