Generador de Sitemap XML
Genera archivos sitemap.xml con URLs, prioridades y frecuencias de cambio.
Acerca de esta herramienta
Un mapa del sitio es un archivo que informa a los motores de búsqueda qué páginas existen en tu sitio web y con qué frecuencia cambian. El Generador de Sitemap XML crea archivos sitemap.xml correctamente formateados que ayudan a Google, Bing y otros motores de búsqueda a rastrear e indexar tu contenido de manera más eficiente. Esto es especialmente valioso para sitios web grandes con cientos o miles de páginas, donde el descubrimiento manual por bots de búsqueda podría tomar meses.
Para usar esta herramienta, ingresa las URL de tu sitio web una por línea, luego asigna opcionalmente a cada URL una prioridad (de 0.0 a 1.0, donde 1.0 es la más alta) y especifica la frecuencia con la que cambia—diariamente, semanalmente, mensualmente o anualmente. La herramienta genera instantáneamente un mapa de sitio XML válido que sigue el protocolo oficial de sitemaps. Luego puedes descargar el archivo, subirlo al directorio raíz de tu servidor web y enviarlo a Google Search Console y Bing Webmaster Tools para un indexado más rápido.
Los mapas del sitio son particularmente útiles cuando la estructura de tu sitio web es compleja o cuando las páginas carecen de suficientes enlaces internos. Si bien no son un sustituto de una buena arquitectura de sitio, aceleran el tiempo que necesitan los motores de búsqueda para descubrir contenido nuevo o actualizado, lo que los hace esenciales para SEO. La mayoría de los sitios web modernos—blogs, tiendas de comercio electrónico, sitios de noticias y portales de documentación—se benefician de tener un mapa del sitio registrado en los motores de búsqueda.
Preguntas Frecuentes
Implementación de Código
from datetime import date
from xml.etree.ElementTree import Element, SubElement, tostring
from xml.dom import minidom
def generate_sitemap(urls: list[dict]) -> str:
"""
Generate sitemap.xml string.
Each url dict: { loc, lastmod?, changefreq?, priority? }
"""
root = Element("urlset")
root.set("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9")
for entry in urls:
url_el = SubElement(root, "url")
SubElement(url_el, "loc").text = entry["loc"]
if "lastmod" in entry:
SubElement(url_el, "lastmod").text = entry["lastmod"]
if "changefreq" in entry:
SubElement(url_el, "changefreq").text = entry["changefreq"]
if "priority" in entry:
SubElement(url_el, "priority").text = str(entry["priority"])
raw = tostring(root, encoding="unicode")
dom = minidom.parseString(raw)
return dom.toprettyxml(indent=" ")
urls = [
{"loc": "https://example.com/", "lastmod": str(date.today()), "changefreq": "daily", "priority": 1.0},
{"loc": "https://example.com/about", "lastmod": str(date.today()), "changefreq": "monthly", "priority": 0.8},
{"loc": "https://example.com/contact", "lastmod": str(date.today()), "changefreq": "monthly", "priority": 0.5},
]
print(generate_sitemap(urls))
Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.