duke_scraper

Duke Law Journal
maps to Duke Law Journal (id 11)
Latest Status
success #4255
Latest Metrics
d=2  |  skip=298  |  err=0
t=386.4s
Implementation
script
bepress
Law Review
Uploads Pending
0
Last Upload
2026-06-01 15:17:15
uabox:Law_Review_Project/duke_law_journal_20260601_151656.zip

Definition

scraper_id
duke_scraper
canonical_name
Duke Law Journal
institution_code
-
platform
bepress
base_class
script
class_name
-
module_path
scrapers.duke_scraper
file_path
scrapers/duke_scraper.py
has_cli_entrypoint
true
is_abstract
false
discovered_at
2026-03-30 20:11:12
updated_at
2026-06-17 03:35:43

Run History

Showing 7 runs (law_review_id=11) — use ?limit=200 for more.
Run Status Start End Runtime Metrics Error / Details Logs
#4255 success 2026-05-31T20:08:12+00:00 2026-05-31T20:14:39+00:00 386.4s d=2  |  skip=298  |  err=0
discovered=300  |  processed=300
-
extra_json
{"automation_cycle_id": 1502, "canonical_name": "Duke Law Journal", "child_pid": 1257782, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-05-31T20:14:13+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-31T20:08:12+00:00", "run_kind": "scheduled_active", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1780258092_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1780258092_duke_scraper.out.log", "timeout_minutes": 45}
stdout | stderr
#3572 partial 2026-05-01T17:50:26+00:00 2026-05-01T17:58:29+00:00 482.1s d=201  |  skip=97  |  err=2
discovered=300  |  processed=300
digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4085&context=dlj&download=1
extra_json
{"automation_cycle_id": 594, "canonical_name": "Duke Law Journal", "child_pid": 878163, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-05-01T17:58:26+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T17:50:26+00:00", "run_kind": "scheduled_active", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1777657826_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1777657826_duke_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
stdout | stderr
#2695 partial 2026-03-08T05:09:49+00:00 2026-03-08T05:11:35+00:00 105.1s d=19  |  skip=78  |  err=3
discovered=300  |  processed=300
digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4200&context=dlj&download=1
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2439294, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-03-08T05:11:19+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T05:09:49+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1772946589_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1772946589_duke_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
stdout | stderr
#598 success 2026-02-06T03:38:18+00:00 2026-02-06T03:38:46+00:00 27.4s d=23  |  skip=2  |  err=0
discovered=25  |  processed=25
-
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2354200, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-02-06T03:38:18+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T03:38:18+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1770349098_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770349098_duke_scraper.out.log", "timeout_minutes": 25}
stdout | stderr
#597 failed 2026-02-06T03:37:01+00:00 2026-02-06T03:37:22+00:00 20.0s d=0  |  skip=2  |  err=23
discovered=25  |  processed=25
download_failed_all: HTTP 202 for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4212&context=dlj
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2351802, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-02-06T03:37:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T03:37:01+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1770349021_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770349021_duke_scraper.out.log", "timeout_minutes": 25}
stdout | stderr
#433 timeout 2026-01-22T10:41:32+00:00 2026-01-22T11:26:32+00:00 2700.0s d=0  |  skip=0  |  err=1
discovered=-  |  processed=-
timeout: Timeout after 45 minutes
extra_json
{"returncode": null}
-
#12 no_new_content 2025-12-22T22:44:08.090977 2025-12-22T23:50:17.271490 3969.2s d=0  |  skip=0  |  err=0
discovered=-  |  processed=-
error: No new content found (all duplicates) -

Runs (scraper_name = duke_scraper)

These are runs recorded explicitly under this scraper_id.
Run Status Start End Runtime Metrics Error / Details Logs
#4255 success 2026-05-31T20:08:12+00:00 2026-05-31T20:14:39+00:00 386.4s d=2  |  skip=298  |  err=0
discovered=300  |  processed=300
-
extra_json
{"automation_cycle_id": 1502, "canonical_name": "Duke Law Journal", "child_pid": 1257782, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-05-31T20:14:13+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-31T20:08:12+00:00", "run_kind": "scheduled_active", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1780258092_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1780258092_duke_scraper.out.log", "timeout_minutes": 45}
stdout | stderr
#3572 partial 2026-05-01T17:50:26+00:00 2026-05-01T17:58:29+00:00 482.1s d=201  |  skip=97  |  err=2
discovered=300  |  processed=300
digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4085&context=dlj&download=1
extra_json
{"automation_cycle_id": 594, "canonical_name": "Duke Law Journal", "child_pid": 878163, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-05-01T17:58:26+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T17:50:26+00:00", "run_kind": "scheduled_active", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1777657826_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1777657826_duke_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
stdout | stderr
#2695 partial 2026-03-08T05:09:49+00:00 2026-03-08T05:11:35+00:00 105.1s d=19  |  skip=78  |  err=3
discovered=300  |  processed=300
digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4200&context=dlj&download=1
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2439294, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-03-08T05:11:19+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T05:09:49+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1772946589_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1772946589_duke_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
stdout | stderr
#598 success 2026-02-06T03:38:18+00:00 2026-02-06T03:38:46+00:00 27.4s d=23  |  skip=2  |  err=0
discovered=25  |  processed=25
-
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2354200, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-02-06T03:38:18+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T03:38:18+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1770349098_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770349098_duke_scraper.out.log", "timeout_minutes": 25}
stdout | stderr
#597 failed 2026-02-06T03:37:01+00:00 2026-02-06T03:37:22+00:00 20.0s d=0  |  skip=2  |  err=23
discovered=25  |  processed=25
download_failed_all: HTTP 202 for https://scholarship.law.duke.edu/cgi/viewcontent.cgi?article=4212&context=dlj
extra_json
{"canonical_name": "Duke Law Journal", "child_pid": 2351802, "file_path": "scrapers/duke_scraper.py", "heartbeat_at": "2026-02-06T03:37:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 11, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T03:37:01+00:00", "scraper_id": "duke_scraper", "script_path": "scrapers/duke_scraper.py", "stderr_path": "logs/orchestrator_runs/1770349021_duke_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770349021_duke_scraper.out.log", "timeout_minutes": 25}
stdout | stderr
#433 timeout 2026-01-22T10:41:32+00:00 2026-01-22T11:26:32+00:00 2700.0s d=0  |  skip=0  |  err=1
discovered=-  |  processed=-
timeout: Timeout after 45 minutes
extra_json
{"returncode": null}
-