JSON-LD Tag Extractor for Schema.org Audits

codemaster devops · @codemasterdevops

Extract JSON-LD structured data from a list of URLs. Export parsed Schema.org markup for technical SEO audits and data pipelines.

About

What does JSON-LD Tag Extractor do?

JSON-LD Tag Extractor reads Schema.org structured data from a list of web pages and saves the parsed JSON-LD blocks in a Bytewells dataset. Use it to audit structured data across page templates, compare published markup, or collect it for downstream analysis.

What website data can you extract?

  • url is the requested page URL.
  • data contains the parsed JSON-LD block. Nested objects, arrays, and @graph remain intact.
  • customData contains optional metadata you provide with the run, such as an audit label.

Each parsed block produces a row. A fetched page with no JSON-LD scripts produces an empty data object.

How to use JSON-LD Tag Extractor

  1. Add the page URLs you want to check to startUrls.
  2. Optionally supply customData to label the rows. Leave the proxy disabled for direct requests, or configure a proxy when needed.
  3. Start the run and open the dataset. Export JSON or CSV, or retrieve the items through the Bytewells API. JSON preserves nested structured data.
Example input
{
  "startUrls": [
    { "url": "https://en.wikipedia.org/wiki/JSON-LD" },
    { "url": "https://example.com/" }
  ],
  "customData": { "batch": "schema-audit" }
}
Example dataset row
{
  "url": "https://example.com/",
  "data": {},
  "customData": { "batch": "schema-audit" }
}
Coverage

The actor reads the HTML response and skips malformed JSON-LD with a log warning. It processes the supplied pages, with no browser rendering, link discovery, or rich-result eligibility checks. Some sites restrict automated requests. Check the run log for pages that failed after retries. If every page request fails, the run fails.

FAQ

What does JSON-LD Tag Extractor collect?
It collects parsed JSON-LD from script tags in the HTML returned by the URLs you submit.
How do I submit multiple pages?
Add each page to startUrls as a URL object. A page with multiple valid JSON-LD scripts can produce multiple rows.
What does a dataset row contain?
Each row contains the requested URL, the parsed JSON-LD block in data, and your optional customData object.
How are arrays and @graph handled?
Arrays and @graph remain in their original structure inside data. You can flatten or filter them after export.
How can I tell that a page had no JSON-LD?
A successfully fetched page without JSON-LD scripts writes a row with an empty data object and logs a warning.
What happens to malformed JSON-LD?
The actor skips invalid JSON and logs a warning. Valid blocks on the same page can still produce rows.
Can it see JSON-LD injected by JavaScript?
It reads the HTML response. JSON-LD that appears only after JavaScript runs in a browser is outside that coverage.
Can I label results by audit or project?
Yes. Put your audit or project label in customData. The actor copies that object to every saved row.
Do I need a website API key or proxy?
Public pages require no website API key. Direct requests are the default, and you can supply custom proxy URLs.
How do I export the results?
Export the run dataset as JSON or CSV, or fetch the items through the Bytewells API. JSON preserves the nesting in data.
What happens when a page fails to load?
The actor retries failed requests and logs any that still fail. It continues with other pages and fails the run if every request fails.
What does the rental cover?
The $19.99 monthly rental gives you access to the actor after a 3-day trial. Bytewells bills run compute separately.

More Actors from the same publisher.

View all from @codemasterdevops