Est. MMXXV · lrscraper The Law Review Reporter Live

A continuous record of the open collection of American legal scholarship

Vol. II Wednesday, September 23, 2026 № 266

Scraper implementation

brooklyn_scraper

Brooklyn Law Review · mapped to registry #99

Implementation identity
scrapers/brooklyn_scraper.py
scriptbepressCLI entrypoint
partial
Latest status
partial
Run #46095
Latest runtime
195.9s
2026-09-20T20:46:31+00:00
Latest PDFs
0
220 duplicates skipped
Uploads pending
0
Queue clear or unavailable
Run history
12
Returned by current limit

Definition

Registry metadata for this implementation

scraper id
brooklyn_scraper
canonical name
Brooklyn Law Review
institution code
-
platform
bepress
base class
script
class name
-
module path
scrapers.brooklyn_scraper
file path
scrapers/brooklyn_scraper.py
has cli entrypoint
true
is abstract
false
updated at
2026-09-22 23:32:37

Operational mapping

Law review ownership and publication state

Registry health
DEGRADED
Last uploaded
2026-07-01 20:25:19
Registry sync
uabox:Law_Review_Project/brooklyn_law_review_20260701_202449.zip
Latest error
ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry

Run history

Runs associated with law review #99; diagnostics expand in place.

12 returned · show 200
Run Status Started Runtime Result Error / diagnostics Logs
#46095 partial 2026-09-20T20:46:31+00:00ended 2026-09-20T20:49:51+00:00 195.9s 0 PDF 220 skipped 3 errors digital_commons_waf_partial: ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry
Run metadata
{"automation_cycle_id": 264918, "canonical_name": "Brooklyn Law Review", "child_pid": 190952, "discovery_coverage": {"capped": true, "discovery_complete": false, "known_units": 138, "mode": "balanced", "remaining_units": 108, "scope": "https://brooklynworks.brooklaw.edu/blr/", "selected_units": 25, "visited_this_run": 25, "visited_units": 30}, "download_queue": {"due": 7, "pending": 10, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 3}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-20T20:49:31+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-20T20:46:31+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789937191_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789937191_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#45762 partial 2026-09-13T16:06:33+00:00ended 2026-09-13T16:32:51+00:00 1575.0s 0 PDF 72 skipped 7 errors digital_commons_waf_partial: HTTP 403 for https://brooklynworks.brooklaw.edu/context/blr/article/2446/viewcontent/ (fallback UA)
Run metadata
{"automation_cycle_id": 251087, "canonical_name": "Brooklyn Law Review", "child_pid": 1510548, "discovery_coverage": {"capped": true, "discovery_complete": false, "known_units": 138, "mode": "balanced", "remaining_units": 128, "scope": "https://brooklynworks.brooklaw.edu/blr/", "selected_units": 25, "visited_this_run": 10, "visited_units": 10}, "download_queue": {"due": 0, "pending": 7, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 7}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-13T16:32:34+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T16:06:33+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789315593_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789315593_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#45353 partial 2026-09-13T05:00:39+00:00ended 2026-09-13T05:22:49+00:00 1328.8s 0 PDF 40 skipped 7 errors digital_commons_waf_partial: HTTP 403 for https://brooklynworks.brooklaw.edu/context/blr/article/2447/viewcontent/ (fallback UA)
Run metadata
{"automation_cycle_id": 250135, "canonical_name": "Brooklyn Law Review", "child_pid": 451259, "download_queue": {"due": 0, "pending": 7, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 7}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-13T05:22:39+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T05:00:39+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789275639_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789275639_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#44530 no new content 2026-08-13T23:58:01+00:00ended 2026-08-13T23:58:06+00:00 4.6s 0 PDF 65 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 153834, "canonical_name": "Brooklyn Law Review", "child_pid": 2572645, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-08-13T23:58:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-08-13T23:58:01+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1786665481_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1786665481_brooklyn_scraper.out.log", "timeout_minutes": 45}
#43761 no new content 2026-07-14T18:39:09+00:00ended 2026-07-14T18:39:15+00:00 5.7s 0 PDF 65 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 43988, "canonical_name": "Brooklyn Law Review", "child_pid": 2978885, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-07-14T18:39:09+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-14T18:39:09+00:00", "run_kind": "scheduled", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1784054349_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1784054349_brooklyn_scraper.out.log", "timeout_minutes": 15}
#30921 success 2026-07-01T17:35:27+00:00ended 2026-07-01T17:39:37+00:00 249.4s 8 PDF 40 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 28047, "canonical_name": "Brooklyn Law Review", "child_pid": 3114379, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-07-01T17:39:08+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-01T17:35:27+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1782927327_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1782927327_brooklyn_scraper.out.log", "timeout_minutes": 45}
#4311 success 2026-06-01T15:25:35+00:00ended 2026-06-01T15:25:43+00:00 7.5s 1 PDF 54 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 1513, "canonical_name": "Brooklyn Law Review", "child_pid": 23217, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-06-01T15:25:35+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-06-01T15:25:35+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1780327535_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1780327535_brooklyn_scraper.out.log", "timeout_minutes": 45}
#3636 partial 2026-05-01T18:42:57+00:00ended 2026-05-01T18:44:50+00:00 111.9s 10 PDF 44 skipped 1 errors digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://brooklynworks.brooklaw.edu/cgi/viewcontent.cgi?article=2427&context=blr&download=1
Run metadata
{"automation_cycle_id": 601, "canonical_name": "Brooklyn Law Review", "child_pid": 928887, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-05-01T18:44:27+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T18:42:57+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1777660977_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1777660977_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#2783 success 2026-03-08T17:07:50+00:00ended 2026-03-08T17:08:14+00:00 24.2s 5 PDF 0 skipped 0 errors No reported error
Run metadata
{"canonical_name": "Brooklyn Law Review"}
#2746 protected 2026-03-08T11:45:56+00:00ended 2026-03-08T11:46:18+00:00 21.9s 0 PDF 39 skipped 3 errors digital_commons_waf_block: Digital Commons WAF Block (HTTP 403) for https://brooklynworks.brooklaw.edu/cgi/viewcontent.cgi?article=2422&context=blr&download=1
Run metadata
{"canonical_name": "Brooklyn Law Review", "child_pid": 2666493, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-03-08T11:45:56+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T11:45:56+00:00", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1772970356_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1772970356_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#714 success 2026-02-06T08:43:01+00:00ended 2026-02-06T08:43:25+00:00 23.4s 1 PDF 0 skipped 0 errors No reported error
Run metadata
{"canonical_name": "Brooklyn Law Review", "child_pid": 2999906, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-02-06T08:43:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T08:43:01+00:00", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1770367381_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770367381_brooklyn_scraper.out.log", "timeout_minutes": 25}
#250 timeout 2026-01-19T03:58:44+00:00ended 2026-01-19T04:43:44+00:00 2700.0s 0 PDF 0 skipped 1 errors timeout: Timeout after 45 minutes
Run metadata
{"returncode": null}

Exact scraper-ID runs

Legacy records explicitly stored under this implementation identifier.

Run Status Started Runtime Result Error / diagnostics Logs
#46095 partial 2026-09-20T20:46:31+00:00ended 2026-09-20T20:49:51+00:00 195.9s 0 PDF 220 skipped 3 errors digital_commons_waf_partial: ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry
Run metadata
{"automation_cycle_id": 264918, "canonical_name": "Brooklyn Law Review", "child_pid": 190952, "discovery_coverage": {"capped": true, "discovery_complete": false, "known_units": 138, "mode": "balanced", "remaining_units": 108, "scope": "https://brooklynworks.brooklaw.edu/blr/", "selected_units": 25, "visited_this_run": 25, "visited_units": 30}, "download_queue": {"due": 7, "pending": 10, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 3}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-20T20:49:31+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-20T20:46:31+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789937191_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789937191_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#45762 partial 2026-09-13T16:06:33+00:00ended 2026-09-13T16:32:51+00:00 1575.0s 0 PDF 72 skipped 7 errors digital_commons_waf_partial: HTTP 403 for https://brooklynworks.brooklaw.edu/context/blr/article/2446/viewcontent/ (fallback UA)
Run metadata
{"automation_cycle_id": 251087, "canonical_name": "Brooklyn Law Review", "child_pid": 1510548, "discovery_coverage": {"capped": true, "discovery_complete": false, "known_units": 138, "mode": "balanced", "remaining_units": 128, "scope": "https://brooklynworks.brooklaw.edu/blr/", "selected_units": 25, "visited_this_run": 10, "visited_units": 10}, "download_queue": {"due": 0, "pending": 7, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 7}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-13T16:32:34+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T16:06:33+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789315593_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789315593_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#45353 partial 2026-09-13T05:00:39+00:00ended 2026-09-13T05:22:49+00:00 1328.8s 0 PDF 40 skipped 7 errors digital_commons_waf_partial: HTTP 403 for https://brooklynworks.brooklaw.edu/context/blr/article/2447/viewcontent/ (fallback UA)
Run metadata
{"automation_cycle_id": 250135, "canonical_name": "Brooklyn Law Review", "child_pid": 451259, "download_queue": {"due": 0, "pending": 7, "retries": 7, "scope": "BrooklynScraper:Brooklyn Law Review", "waiting": 7}, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-09-13T05:22:39+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T05:00:39+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1789275639_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789275639_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#44530 no new content 2026-08-13T23:58:01+00:00ended 2026-08-13T23:58:06+00:00 4.6s 0 PDF 65 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 153834, "canonical_name": "Brooklyn Law Review", "child_pid": 2572645, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-08-13T23:58:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-08-13T23:58:01+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1786665481_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1786665481_brooklyn_scraper.out.log", "timeout_minutes": 45}
#43761 no new content 2026-07-14T18:39:09+00:00ended 2026-07-14T18:39:15+00:00 5.7s 0 PDF 65 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 43988, "canonical_name": "Brooklyn Law Review", "child_pid": 2978885, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-07-14T18:39:09+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-14T18:39:09+00:00", "run_kind": "scheduled", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1784054349_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1784054349_brooklyn_scraper.out.log", "timeout_minutes": 15}
#30921 success 2026-07-01T17:35:27+00:00ended 2026-07-01T17:39:37+00:00 249.4s 8 PDF 40 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 28047, "canonical_name": "Brooklyn Law Review", "child_pid": 3114379, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-07-01T17:39:08+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-01T17:35:27+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1782927327_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1782927327_brooklyn_scraper.out.log", "timeout_minutes": 45}
#4311 success 2026-06-01T15:25:35+00:00ended 2026-06-01T15:25:43+00:00 7.5s 1 PDF 54 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 1513, "canonical_name": "Brooklyn Law Review", "child_pid": 23217, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-06-01T15:25:35+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-06-01T15:25:35+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1780327535_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1780327535_brooklyn_scraper.out.log", "timeout_minutes": 45}
#3636 partial 2026-05-01T18:42:57+00:00ended 2026-05-01T18:44:50+00:00 111.9s 10 PDF 44 skipped 1 errors digital_commons_waf_partial: Digital Commons WAF Block (HTTP 403) for https://brooklynworks.brooklaw.edu/cgi/viewcontent.cgi?article=2427&context=blr&download=1
Run metadata
{"automation_cycle_id": 601, "canonical_name": "Brooklyn Law Review", "child_pid": 928887, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-05-01T18:44:27+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T18:42:57+00:00", "run_kind": "scheduled_active", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1777660977_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1777660977_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#2746 protected 2026-03-08T11:45:56+00:00ended 2026-03-08T11:46:18+00:00 21.9s 0 PDF 39 skipped 3 errors digital_commons_waf_block: Digital Commons WAF Block (HTTP 403) for https://brooklynworks.brooklaw.edu/cgi/viewcontent.cgi?article=2422&context=blr&download=1
Run metadata
{"canonical_name": "Brooklyn Law Review", "child_pid": 2666493, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-03-08T11:45:56+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T11:45:56+00:00", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1772970356_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1772970356_brooklyn_scraper.out.log", "timeout_minutes": 45, "waf_blocked": true}
#714 success 2026-02-06T08:43:01+00:00ended 2026-02-06T08:43:25+00:00 23.4s 1 PDF 0 skipped 0 errors No reported error
Run metadata
{"canonical_name": "Brooklyn Law Review", "child_pid": 2999906, "file_path": "scrapers/brooklyn_scraper.py", "heartbeat_at": "2026-02-06T08:43:01+00:00", "heartbeat_source": "orchestrator", "law_review_id": 99, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T08:43:01+00:00", "scraper_id": "brooklyn_scraper", "script_path": "scrapers/brooklyn_scraper.py", "stderr_path": "logs/orchestrator_runs/1770367381_brooklyn_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1770367381_brooklyn_scraper.out.log", "timeout_minutes": 25}
#250 timeout 2026-01-19T03:58:44+00:00ended 2026-01-19T04:43:44+00:00 2700.0s 0 PDF 0 skipped 1 errors timeout: Timeout after 45 minutes
Run metadata
{"returncode": null}