본문으로 건너뛰기
🛠️ToolsShed

XML Sitemap Generator

URL 목록에서 우선순위와 변경 빈도 설정을 포함한 XML 사이트맵을 생성합니다.

한 줄에 URL을 하나씩 입력하세요. HTTP/HTTPS가 필수입니다.

이 도구 소개

XML 사이트맵은 Google 같은 검색 엔진에 웹사이트의 모든 페이지, 중요도, 업데이트 빈도를 알려주는 구조화된 파일입니다. XML 사이트맵 생성기를 사용하면 수동으로 XML을 작성하거나 서버 소프트웨어를 설치하지 않고 간단한 URL 목록에서 올바르게 형식이 지정된 사이트맵을 빠르게 만들 수 있습니다. 특히 대규모 웹사이트나 복잡한 네비게이션을 가진 사이트에서 검색 엔진이 콘텐츠를 더 효율적으로 발견하고 색인화하도록 하는 것이 필수적입니다.

도구를 사용하려면 입력 필드에 URL을 붙여넣기만 하면 됩니다. 한 줄에 URL 하나씩 입력하고, 각 URL에 대해 선택적으로 우선순위(0.0~1.0)와 변경 빈도(없음, 연 1회, 월 1회, 주 1회, 일 1회, 시간 단위)를 설정할 수 있습니다. 도구가 사이트맵 프로토콜 표준을 준수하는 유효한 XML 사이트맵을 자동으로 생성하며, XML 파일로 다운로드하거나 코드를 직접 복사할 수 있습니다. 이 사이트맵을 Google Search Console, Bing 웹마스터 도구에 제출하거나 웹사이트의 루트 디렉토리에 배치할 수 있습니다.

XML 사이트맵 생성기는 수백 개의 페이지가 있는 전자상거래 사이트, 블로그, 검색 가시성을 개선하려는 콘텐츠 제작자에게 특히 유용합니다. 대규모 웹사이트를 관리하거나 플랫폼 간에 콘텐츠를 마이그레이션할 때, 정확한 사이트맵을 생성하면 시간을 절약하고 검색 엔진이 가장 중요한 페이지를 우선시하도록 할 수 있습니다. 소규모 사이트의 경우 CMS에 내장된 자동 사이트맵 생성기를 사용할 수 있지만, 이 도구는 우선순위와 변경 빈도 설정을 완전히 제어할 수 있게 해줍니다.

자주 묻는 질문

코드 구현

from xml.dom.minidom import parseString
from xml.etree.ElementTree import Element, SubElement, tostring
from datetime import date

def generate_sitemap(urls):
    urlset = Element("urlset")
    urlset.set("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9")

    for entry in urls:
        url_el = SubElement(urlset, "url")
        SubElement(url_el, "loc").text = entry["url"]
        SubElement(url_el, "lastmod").text = entry.get("lastmod", date.today().isoformat())
        SubElement(url_el, "changefreq").text = entry.get("changefreq", "weekly")
        SubElement(url_el, "priority").text = str(entry.get("priority", 0.8))

    xml_str = tostring(urlset, encoding="unicode")
    declaration = '<?xml version="1.0" encoding="UTF-8"?>\n'
    return declaration + parseString(xml_str).toprettyxml(indent="  ").split("\n", 1)[1]

urls = [
    {"url": "https://example.com/", "priority": 1.0, "changefreq": "daily"},
    {"url": "https://example.com/about", "priority": 0.7},
    {"url": "https://example.com/contact", "priority": 0.5},
]
print(generate_sitemap(urls))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.