Extract HTML Tables From Web Pages as JSON
Created by
Radosław Szal
Pulls every table on a page into rows of cells you can load straight into a dataframe. No copy-paste, no merged-header cleanup. $0.003 per page.
Python Web Scraper — Playwright, Any Websiteeszetael_lab/reliable-playwright-scraper
URL
Title
Text
Text cut at 5000
+1 fieldTextNumberBooleanListObject
Input
Start URLs(required)
url:https://en.wikipedia.org/wiki/List_of_programming_languages
Page function:async def page_function(page, context, request):
rows = await page.eval_on_selector_all(
'table tr', 'els => els.map(r => Array.from(\n r.querySelectorAll(\'th,td\')).map(c => c.innerText.trim()))')
return {'url': request.url, 'rowCount': len(rows),
'rows': [r for r in rows if r][:500]}
Max pages to crawl:1
Max concurrency:5
Request timeout (seconds):90
Wait until:load
Respect robots.txt:true
Proxy configuration
Block images, fonts and media:true
Session handling:auto
Max items:1
Deliver records from pages that returned nothing:false
Output fields
URL
Title
Text
Text cut at 5000
Fully loaded
Sign up on Apify01
Create your Apify account to access the Python Web Scraper — Playwright, Any Website.
Start the run02
The Actor will start running based on the input automatically.
Receive the output03
Monitor the progress in real-time. You will be notified as soon as your dataset is complete and ready for review.
Integrate into your workflow04
The final output is delivered in JSON, CSV, or Excel format, ready to be plugged into your workflow.
