--- id: ultimate-sitemap-parser version: "1.8.1" license: GPL-3.0-or-later license_treatment: copyleft maintenance: active --- # ultimate-sitemap-parser — A performant library for parsing and crawling sitemaps License: copyleft · Maintenance: active · Downloads: 198.4K/mo ## What it is and what it does Ultimate Sitemap Parser is a Python library that discovers and parses sitemaps in all common formats—XML, RSS, Atom, plain text, and Google News/Image variants—and extracts URLs into an object tree. It handles malformed sitemaps gracefully, discovers sitemaps linked from robots.txt, and uses memory-efficient Expat XML parsing to avoid loading entire hierarchies into memory at once. The library is designed for web crawlers and indexing workflows. You give it a homepage URL, and it returns a tree of sitemap objects you can iterate over to get all discovered pages. It has been field-tested with approximately 1 million URLs as part of the Media Cloud project and depends only on python-dateutil and requests, making installation straightforward on any modern Python environment. Use it for: - Discover all pages on a website by parsing its sitemap hierarchy for web crawling or SEO audits. - Extract URLs from Google News or Image sitemaps for specialized content indexing. - Build a site map inventory by recursively following nested sitemap references. - Integrate sitemap discovery into a web scraper to respect site structure and robots.txt directives. - Analyze sitemap coverage to identify missing or orphaned pages in a website. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses and crawls sitemaps in multiple formats (XML, RSS, Atom, plain text, Google News/Image) and extracts URLs efficiently without loading entire trees into memory. Yes. The library is actively maintained, has low install friction, no known vulnerabilities, and solves a specific problem well—parsing diverse sitemap formats reliably. The copyleft GPL-3.0-or-later license is the main constraint: use it freely in open-source projects, but review licensing implications before bundling into proprietary software. ## Install pip install ultimate-sitemap-parser uv add ultimate-sitemap-parser poetry add ultimate-sitemap-parser ## Installing ultimate-sitemap-parser Before you install: Low friction: pure Python wheel with only two stable runtime dependencies (python-dateutil and requests). Actively maintained as of 2026-06-16 with 256 repository stars. License in practice: GPL-3.0-or-later (copyleft): you must license any derivative work or bundled application under compatible terms; suitable for open-source projects but requires legal review before use in proprietary software. Quickstart: pip install ultimate-sitemap-parser from ultimate_sitemap_parser.tree import sitemap_tree_for_homepage tree = sitemap_tree_for_homepage('https://www.example.org/') for page in tree.all_pages(): print(page.url) Requires Python 3.10 or later; network access to fetch sitemaps from target URLs. Verify before relying: - Whether the library handles redirects or authentication when fetching sitemaps from protected URLs. - Memory consumption profile on very large sitemap hierarchies beyond the ~1 million URLs mentioned in testing. - Whether custom web client support extends to proxy configuration or certificate handling. ## Package facts - License: GPL-3.0-or-later (copyleft) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 198.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags sitemap parser xml, crawl sitemaps python, extract urls from sitemap, sitemap tree parsing, google news sitemap parser, rss atom sitemap, robots.txt sitemap discovery, web-crawling, sitemap-discovery, xml-parsing [View on SkillFed](https://skillfed.io/packages/ultimate-sitemap-parser) · [View on PyPI](https://pypi.org/project/ultimate-sitemap-parser/)