Sitemap Scraper
Pricing
from $4.99 / 1,000 results
Sitemap Scraper
Sitemap Scraper extracts URLs, pages, images, and structured data from XML sitemaps. Quickly discover website content, audit site structure, monitor updates, support SEO analysis, conduct competitor research, and gather valuable website data at scale.
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
ScrapeDrift
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
Sitemap Scraper With Image URLs ๐ผ๏ธ
If you need to extract URLs from a website sitemap and audit the images each page declares to Google via image-sitemap extensions, manually downloading and parsing XML files is tedious and error-prone. Sitemap Scraper With Image URLs automatically crawls sitemap URLs (including sitemap indexes) and saves every discovered URL to an Apify dataset โ plus, for every <url> entry, it parses the <image:image> extension tags and outputs the declared image URLs and how many images each page declares. It's a practical sitemap parser and image sitemap scraper for SEO sitemap auditing, image-SEO audits, digital-asset-manager (DAM) coverage checks, CDN/alt-text audits, sitemap link scraping, and automated sitemap crawling. Built for SEO specialists, image-SEO / digital-asset managers, data analysts, and researchers who need a URL + image inventory fast at scale. In one run, you can process multiple sitemap URLs and get structured results without writing any code.
See the Data: Sample Output
Here's a real record from a single run:
{"url": "https://example.com/blog/example-page","lastMod": "2026-05-28","image_urls": ["https://example.com/images/photo1.jpg","https://example.com/images/photo2.jpg"],"image_count": 2,"errorReason": null}
The actor writes extracted URL + image records to the dataset as objects like the one above.
| Field | Type | What It Tells You |
|---|---|---|
url | string | null | The discovered URL extracted from the sitemap or sitemap index. Null only on the total-failure diagnostic row. |
lastMod | string | null | The lastmod date (first 10 characters) when present โ useful for freshness checks in your SEO sitemap scraper workflow. |
image_urls | array | null | Image URLs declared in the <image:image><image:loc> extension tags for that page entry. [] means the entry genuinely declares zero images; null means ๐ผ๏ธ Include Image Sitemap Data was disabled (not parsed). |
image_count | integer | null | Count of images declared for that URL (len(image_urls)). 0 is a genuine zero-image count; null means image parsing was disabled. |
errorReason | string | null | Set only on the uncharged diagnostic row pushed when a run finds zero URLs at all (e.g. no_start_urls, all_sitemaps_failed). Null on every normal per-URL row. |
Export your full dataset as JSON, CSV, or Excel from the Apify dashboard.
Setting It Up
Drop this into your input.json and you're ready to go:
{"startUrls": [{ "url": "https://blog.apify.com/sitemap.xml" }],"includeImageSitemapData": true}
| Parameter | Required | What It Does |
|---|---|---|
startUrls | โ | A list of sitemap URLs to crawl (it can include a sitemap index, which the actor will handle recursively). |
includeImageSitemapData | โ | When enabled (default true), parses <image:image> extension tags per URL entry and outputs image_urls + image_count. Set to false to skip image parsing entirely (both fields come back null). |
What It Does
Sitemap Scraper With Image URLs downloads sitemap XML content from your provided sitemap URLs, parses it, and saves extracted URLs โ plus their declared image-sitemap images โ into a dataset.
Extract at Scale
Provide one or more sitemap URLs in startUrls, and the actor processes each one to extract all url entries. If a sitemap is actually a sitemap index, it automatically fetches and parses the nested sitemaps as well โ so you get a complete URL list instead of partial results.
Works for Sitemap Indexes (Not Just Simple Sitemaps)
Many websites publish sitemap indexes that point to multiple sub-sitemaps. Sitemap Scraper With Image URLs recognizes that structure and continues crawling through sub-sitemaps until it reaches regular urlset content โ image data is collected on every level.
Image-SEO & Digital-Asset Audits, Not Just a URL Inventory
Instead of a bare list of page URLs, this variant additionally parses the <image:image> Google image-sitemap extension per <url> entry, so an image-SEO or digital-asset manager can immediately see which pages declare which images โ without opening each page โ and audit indexed-eligible images, CDN coverage, or missing image-sitemap declarations across the whole site.
Clean URL + Image Output for SEO Audits
The dataset records include url, lastMod (taken from the sitemap's lastmod value, truncated to the first 10 characters when present), image_urls, and image_count. That makes the output especially useful for sitemap parser workflows like SEO sitemap scraper tools, freshness checks, image-sitemap coverage checks, and sitemap link scraping.
Resilient Fetching with Retries
When fetching sitemap XML, the actor uses a maximum of 3 retries and includes error handling for common HTTP failure modes. It's built to be dependable across real-world public web data.
Honest Nulls, Never Faked Zeros
When ๐ผ๏ธ Include Image Sitemap Data is off, image_urls/image_count are null (not parsed) โ never a faked empty result. When a page genuinely declares zero images, you get a real [] / 0. If an entire run yields zero URLs (bad input or every sitemap failing to fetch), the actor pushes one uncharged diagnostic row with errorReason set, so a total failure still leaves a visible trace in the dataset instead of an empty table.
Overall, Sitemap Scraper With Image URLs turns sitemap + image-sitemap extraction into a one-click dataset you can export and analyze immediately.
Why Sitemap Scraper With Image URLs?
Handles Sitemap Indexes Automatically
Instead of stopping at the first sitemap file, this tool continues into nested sitemap indexes โ image data included. That means fewer gaps in your sitemap URL + image extraction results when you're building a blog sitemap scraper or doing SEO sitemap auditing.
Per-Page Image Inventory, Not Just Page URLs
The actor saves structured records to a dataset, including url, lastMod, image_urls, and image_count. This makes it easy to plug extracted URLs and their declared images into downstream workflows โ whether you're doing an image-SEO audit, a CDN/alt-text coverage sweep, or assembling a sitemap scraper for SEO auditing.
Built for Bulk, Not Busywork
You can supply multiple sitemap URLs in startUrls, then let the actor do the heavy lifting for both URL and image extraction. For teams doing bulk sitemap url scraper or image-sitemap audit tasks, this removes hours of manual parsing and keeps your process repeatable.
Real-World Use Cases
Image-SEO & Digital-Asset Managers
Audit which images are indexed-eligible per page and check image-sitemap coverage across the whole site โ without opening every page โ using image_urls and image_count straight from the sitemap.
SEO Teams
When an SEO audit needs a complete inventory of pages (and their declared images), run Sitemap Scraper With Image URLs with your site's main sitemap URL(s) and get a clean dataset. The lastMod field helps you spot freshness patterns quickly.
Content & Publishing Ops For blog sitemap scraper workflows, you often want visibility into which sections are present, how often they update, and which images each post declares. Use this actor to extract URLs and images from the full sitemap structure (including indexes).
Data Analysts If you're correlating URLs and image counts with performance metrics, you need a reliable baseline dataset. This actor gives you an export-friendly dataset you can join with analytics data โ no custom sitemap parser needed.
Automation & Developer Workflows When you want to schedule automated sitemap + image-sitemap crawling, integrate the actor into your pipeline and treat the output as a consistent source of truth for both page and image inventories.
How to Run It
No code required. Here's how to get your first results in under 5 minutes:
- Open the actor on Apify โ go to the actor page on console.apify.com.
- Enter your inputs โ add your sitemap URLs under
startUrls(each item should contain aurl), and leave ๐ผ๏ธ Include Image Sitemap Data on (default) if you wantimage_urls/image_count. - Configure proxy settings (optional) โ if your setup requires it, enable the provided proxy configuration options for better reliability.
- Start the run and watch the live log โ track sitemap fetching progress as it processes each start URL.
- Open the Dataset tab โ extracted
url,lastMod,image_urls, andimage_countrecords appear as they're pushed. - Export in your preferred format โ download from the Apify dataset tab as JSON, CSV, or Excel.
The whole setup takes under 5 minutes โ results start appearing within seconds of launch.
Export & Integration Options
Once your data is collected, Sitemap Scraper With Image URLs fits directly into your existing workflow.
You can export results from the Apify dataset tab as JSON, CSV, or Excel for quick sharing and analysis. If you're building a dashboard or running scripts, JSON is a convenient format for programmatic ingestion.
For integrations, you can use Apify's API access to pull results into your systems, or connect to automation tools like Zapier / Make to push extracted URLs and images into your next step. You can also schedule runs so automated sitemap + image-sitemap crawling happens regularly, without manual effort.
Pricing
Sitemap Scraper With Image URLs runs on Apify, which includes a free tier โ no credit card needed to start. Free tier usage includes $5 platform credits on sign-up, which is typically enough for several real test runs. After that, runs are generally pay-as-you-go based on Apify compute units (CU), so you only spend when you execute the actor. For heavier workloads and ongoing monitoring, check Apify's plans and pricing on the pricing page.
Start free at apify.com โ scale up when you need to.
Reliability & Limitations
| What We Handle | How |
|---|---|
| Retries for fetching sitemaps | Up to 3 retries with error handling and backoff logic |
| Redirects | Follow redirects enabled for sitemap fetching |
| Sitemap indexes | Recursively parses sitemap indexes until it reaches URL sets, image data included |
| Image-sitemap extensions | Parses <image:image><image:loc> tags per <url> entry (Google image-sitemap namespace) |
| Unknown or unexpected XML | Logs warnings when the root tag is not recognized |
| Partial failures | If a sitemap fails to fetch, processing continues for other provided start URLs |
| Zero-result runs | Pushes one uncharged diagnostic row with errorReason so a total failure is still visible in the dataset |
Limitations: Sitemap Scraper With Image URLs works with publicly accessible sitemap XML content. It only extracts image URLs that the site itself declares in <image:image> extension tags โ if a site's sitemap does not use the image-sitemap extension, image_urls will legitimately be []/image_count 0 for those pages (the images may still exist on the page, just not declared in the sitemap). It does not bypass authentication or process private, login-gated, or otherwise restricted resources. If a sitemap returns malformed XML or is inaccessible due to server-side restrictions, you may see missing outputs for those specific inputs.
Frequently Asked Questions
Is there a free plan?
Yes, Apify offers a free tier so you can run Sitemap Scraper With Image URLs and test the output before scaling up.
Do I need to log in or create an account on Apify to use this?
No โ you can run the actor from the Apify interface once you have access to the actor page. To trigger the actor via the Apify API, you'll use your Apify account credentials.
How accurate is the extracted data?
The actor extracts URLs and image URLs that are present in the sitemap XML you provide. It parses urlset entries and <image:image> extension tags and handles sitemap indexes recursively, so accuracy depends on the sitemap content published by the website owner.
What if a page's images aren't in the sitemap?
Only images actually declared via <image:image> tags in the sitemap are returned. If a site doesn't use the image-sitemap extension, image_urls will be an honest [] (not fabricated) for that page's entries.
How many results can I get per run?
There's no input-only limit in the provided actor schema. The number of records you get depends on how many URLs are contained in the sitemap(s) referenced by your startUrls.
How fresh is the data?
Freshness depends on when the website updates its sitemap and the time you run the actor. The optional lastMod field helps you understand the sitemap's own reported update date.
Is this legal? Does it comply with GDPR / CCPA?
Sitemap Scraper With Image URLs focuses on publicly available data inside sitemap XML files that can be accessed without special credentials. You're responsible for ensuring your use complies with GDPR, CCPA, and applicable laws.
Can I export to Google Sheets or Excel?
Yes. You can export from the Apify dataset tab as JSON, CSV, or Excel, then move the data into Google Sheets or Excel workflows.
Can I schedule this to run automatically?
Yes. You can schedule actor runs on Apify for automated sitemap + image-sitemap crawling so your URL and image lists stay up to date.
Can I access results via the API?
Yes. You can trigger runs and retrieve results programmatically via the Apify API.
What happens when the actor encounters an error?
When sitemap fetching or parsing fails, the actor logs errors and warnings and continues processing other provided inputs. For specific sitemap URLs that can't be fetched after retries, you may see fewer or no extracted records for those inputs. If a run finds zero URLs at all, one uncharged diagnostic row is pushed with errorReason set so the failure is visible in the dataset.