Tools / HTML Table Extractor: Any Web Page Tables to JSON/CSV
HTML Table Extractor: Any Web Page Tables to JSON/CSV
Extract every data table from web pages into clean rows. Input: urls. Output (JSON/CSV): one row per item with sourceUrl, tableIndex, caption, headers, rowCount, columnCount.
What it's for
- Turn Wikipedia or report tables into spreadsheets
- Track pricing or spec tables on public pages
- Feed clean table rows to an LLM or database
Example input
{
"urls": [
"https://en.wikipedia.org/wiki/List_of_largest_companies_in_the_United_States_by_revenue",
"https://en.wikipedia.org/wiki/List_of_U.S._states_and_territories_by_population",
"https://example.com",
"bad ::"
],
"minRows": 3
}Example output
{
"sourceUrl": "https://en.wikipedia.org/wiki/List_of_largest_companies_in_the_United_States_by_revenue",
"tableIndex": 0,
"caption": null,
"headers": [
"Rank",
"Name",
"Industry",
"Revenue (USD millions)",
"…"
],
"rowCount": 100,
"columnCount": 7,
"rows": [
{
"Rank": "1",
"Name": "Walmart",
"Industry": "Retail",
"Revenue (USD millions)": "680,985",
"Revenue growth": "5.1%",
"Employees": "2,100,000",
"Headquarters": "Bentonville, Arkansas"
},
{
"Rank": "2",
"Name": "Amazon",
"Industry": "Retail and cloud computing",
"Revenue (USD millions)": "637,959",
"Revenue growth": "11.0%",
"Employees": "1,556,000",
"Headquarters": "Seattle, Washington"
},
{
"Rank": "3",
"Name": "UnitedHealth Group",
"Industry": "Healthcare",
"Revenue (USD millions)": "400,278",
"Revenue growth": "7.7%",
"Employees": "400,000",
"Headquarters": "Minnetonka, Minnesota"
},
{
"Rank": "4",
"Name": "Apple",
"Industry": "Technology",
"Revenue (USD millions)": "391,035",
"Revenue growth": "2.0%",
"Employees": "164,000",
"Headquarters": "Cupertino, California"
},
"…"
]
}
Input reference
| Field | Type | Notes |
|---|---|---|
urls required | array | Page URLs |
minRows | integer | Skip layout tables smaller than this. |
tableIndex | integer | -1 = all tables; 0 = first... |
respectRobots | boolean | Respect robots.txt |
maxConcurrency | integer | Max concurrency |
Pricing
Pay per event: Table extracted $0.002. Plus Apify's small per-run start fee. Apify's free plan includes monthly credit to try it.
How to run
- Open the Store page and click Try for free.
- Fill in the input (or paste the example JSON in the JSON tab).
- Click Start, then export results as CSV, Excel or JSON, or call it via the Apify API.
- Optional: add a Schedule and a webhook/Slack/email integration for ongoing monitoring.