Conference Abstract Scraper
Produce clean, structured, searchable records for a conference's accepted posters/abstracts (starting with SCAI/JSCAI), combining two sources by design:
Runs on Jetty's managed sandbox. No setup. Free for your first 10 runs.
Real runs, real outputs.
JSCAI 2026 issue, top 20 abstracts
20 cardiovascular-intervention conference abstracts sourced from CrossRef (metadata/ordering) + the SCAI Confex program (full text) directly, 19 PASS / 1 PARTIAL, 0…
JSCAI 2026 issue, first 10 abstracts (quick run)
The same SCAI 2026 supplement, capped at 10 abstracts: 10/10 PASS with complete CrossRef metadata and full Confex text for every entry, zero duplicates, and the OR1-11…
8 steps · start to finish.
- 1Step 1
Environment Setup
▶# Install dependencies pip install beautifulsoup4 lxml playwright requests python -m playwright install chromium # Create output directories mkdir -p {{results_dir}}Verify Playwright's Chromium browser launches successfully, and that
api.crossref.orgis reachable, before proceeding (no external credentials are required for this runbook). - 2Step 2
Discover Abstracts & Metadata via CrossRef
▶Query the CrossRef REST API directly (no browser needed for this step) to discover and order the target issue's abstracts:
- 3Step 3
Fetch Full Text Directly from Confex
▶CrossRef records carry metadata but not full abstract text. Open {{confex_program_url}} with Playwright — this is a client-rendered (Backbone.js) single-page app, so wait for the program's…
- 4Step 4
Evaluate Outputs
▶For each of the {{max_abstracts}} abstracts, assign an evaluation status:
- 5Step 5
Iterate on Errors (max 3 rounds)
▶If any abstracts received FAIL or PARTIAL status, or the completeness check failed:
- 6Step 6
Write Executive Summary
▶Write {{results_dir}}/summary.md with the following structure:
- 7Step 7
Write Validation Report
▶Write {{results_dir}}/validation_report.json:
- 8Step 8
Final Checklist (MANDATORY — do not skip)
▶echo "=== FINAL OUTPUT VERIFICATION ===" RESULTS_DIR="{{results_dir}}" for f in "$RESULTS_DIR/abstracts.json" "$RESULTS_DIR/summary.md" "$RESULTS_DIR/validation_report.json"; do if [ ! -s "$f" ]; then