The CSV backend reads a directory of exportedDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Amaculus/screaming-frog-api/llms.txt
Use this file to discover all available pages before exploring further.
.csv files that you have already produced from the Screaming Frog UI (or CLI). It is the simplest way to get started if you already have exports on disk.
Loading from a folder
Crawl.load detects a CSV directory automatically when the path is a folder containing .csv files. You can also call the constructor directly:
Listing available tabs
Usecrawl.tabs to see which CSV files are present in the folder:
.csv extension, normalized to lowercase with underscores.
Accessing tabs
Access any tab by its normalized name:Filtering rows
Page and link views
The first-classpages() and links() views work with the CSV backend too:
crawl.links("in") requires an all_inlinks.csv file in the export folder. If that file is missing, the view will be empty.Limitations
- No raw SQL.
crawl.raw(),crawl.sql(), andcrawl.query()are not supported on the CSV backend. - Filtered CSVs match GUI output. When you export with a GUI filter active in Screaming Frog, the CSV contains only the filtered rows. This means
crawl.tab("page_titles")returns whatever rows were in the file — it does not re-apply the filter. - No Derby-mapped fields. Computed fields like
IndexabilityandIndexability Statusthat Derby derives from raw columns are not available unless those columns appear in your exported CSVs. - Coverage depends on what you exported. Only the tabs you exported from the UI are available. Use
export_profile="kitchen_sink"with the CLI to produce a broad export.
When to use the CSV backend
- Use CSV when
- Use Derby / DuckDB when
- You already have exports on disk and do not want to open Derby.
- You need exact GUI filter output (e.g.,
Page Titles > Missing). - You are on a machine without Java.
- Your workflow is simple: read rows, filter, export.