跳到内容
🛠️ToolsShed

XML Sitemap Generator

从URL列表生成XML网站地图,支持优先级和更新频率设置。

每行输入一个网址。需要 HTTP/HTTPS。

关于此工具

XML网站地图是一个结构化文件,它向Google等搜索引擎告知您网站上的所有页面、其重要性以及更新频率。XML网站地图生成器让您可以从简单的URL列表快速创建格式正确的网站地图,无需手动编写XML或安装服务器软件。这对于帮助搜索引擎更高效地发现和索引您的内容至关重要,特别是在较大的网站或具有复杂导航结构的网站上。

要使用该工具,只需将您的URL粘贴到输入字段中——每行一个——并可选地为每个URL设置优先级(0.0至1.0)和变更频率(从不、每年、每月、每周、每天、每小时)。该工具会自动生成符合网站地图协议标准的有效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.