Est. MMXXV · lrscraper The Law Review Reporter Live

A continuous record of the open collection of American legal scholarship

Vol. II Tuesday, September 22, 2026 № 265

Scraper implementation

west_virginia_law_review_scraper

West Virginia Law Review · mapped to registry #197

Implementation identity
scrapers/west_virginia_law_review_scraper.py
scriptbepressCLI entrypoint
protected
Latest status
protected
Run #45893
Latest runtime
32.9s
2026-09-13T22:00:53+00:00
Latest PDFs
0
0 duplicates skipped
Uploads pending
0
Queue clear or unavailable
Run history
11
Returned by current limit

Definition

Registry metadata for this implementation

scraper id
west_virginia_law_review_scraper
canonical name
West Virginia Law Review
institution code
-
platform
bepress
base class
script
class name
-
module path
scrapers.west_virginia_law_review_scraper
file path
scrapers/west_virginia_law_review_scraper.py
has cli entrypoint
true
is abstract
false
updated at
2026-09-22 17:32:34

Operational mapping

Law review ownership and publication state

Registry health
ACCESS RESTRICTED
Last uploaded
2026-06-01 18:35:49
Registry sync
uabox:Law_Review_Project/west_virginia_law_review_20260601_183532.zip
Latest error
ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry

Run history

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

11 returned · show 200
Run Status Started Runtime Result Error / diagnostics Logs
#45893 protected 2026-09-13T22:00:53+00:00ended 2026-09-13T22:01:26+00:00 32.9s 0 PDF 0 skipped 1 errors digital_commons_waf_block: ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry
Run metadata
{"automation_cycle_id": 251566, "canonical_name": "West Virginia Law Review", "child_pid": 2081255, "discovery_coverage": {"capped": true, "collections": {"wvlr": {"attempted": true, "discovery_complete": false, "has_more": false, "known_units": null, "last_completed_at": null, "mode": "pagination", "records_examined": 0, "remaining_units": null, "scope": "https://researchrepository.wvu.edu/wvlr/#oai", "total_records_reported": null, "unit_type": "pages", "visited_units": 0}, "wvlr-online": {"attempted": false, "discovery_complete": false}}, "discovery_complete": false, "known_units": null, "mode": "collections", "remaining_units": null, "scope": "https://researchrepository.wvu.edu/#west-virginia-main-and-online", "selected_units": 0, "visited_this_run": 0, "visited_units": 0}, "discovery_problem": "BROKEN_NETWORK: Digital Commons request failed (NoneType; OSError: curl transport exit 28): https://researchrepository.wvu.edu/wvlr/vol128/iss2/", "download_queue": {"due": 7, "pending": 10, "retries": 3, "scope": "WestVirginiaLawReviewScraper:West Virginia Law Review", "waiting": 3}, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-09-13T22:01:23+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T22:00:53+00:00", "run_kind": "manual", "scraper_id": "west_virginia_law_review_scraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1789336853_west_virginia_law_review_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789336853_west_virginia_law_review_scraper.out.log", "timeout_minutes": 4, "waf_blocked": true}
#45889 partial 2026-09-13T21:52:33+00:00ended 2026-09-13T21:56:34+00:00 240.6s 0 PDF 2 skipped 2 errors partial_download_errors: BROKEN_NETWORK: PDF download exceeded remaining run budget: https://researchrepository.wvu.edu/context/wvlr/article/6498/viewcontent/
Run metadata
{"automation_cycle_id": 251553, "canonical_name": "West Virginia Law Review", "child_pid": 2065292, "cutoff": true, "cutoff_elapsed_seconds": 240, "cutoff_max_runtime_seconds": 240, "cutoff_reason": "max_runtime_seconds", "discovery_coverage": {"capped": true, "collections": {"wvlr": {"attempted": true, "capped": true, "discovery_complete": false, "known_units": 389, "mode": "balanced", "remaining_units": 388, "scope": "https://researchrepository.wvu.edu/wvlr/", "selected_units": 1, "visited_this_run": 1, "visited_units": 1}, "wvlr-online": {"attempted": true, "capped": true, "discovery_complete": false, "known_units": 10, "mode": "balanced", "remaining_units": 9, "scope": "https://researchrepository.wvu.edu/wvlr-online/", "selected_units": 1, "visited_this_run": 1, "visited_units": 1}}, "discovery_complete": false, "known_units": 399, "mode": "collections", "remaining_units": 397, "scope": "https://researchrepository.wvu.edu/#west-virginia-main-and-online", "selected_units": 2, "visited_this_run": 2, "visited_units": 2}, "download_queue": {"due": 8, "pending": 10, "retries": 2, "scope": "WestVirginiaLawReviewScraper:West Virginia Law Review", "waiting": 2}, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-09-13T21:56:33+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T21:52:33+00:00", "run_kind": "manual", "scraper_id": "west_virginia_law_review_scraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1789336353_west_virginia_law_review_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789336353_west_virginia_law_review_scraper.out.log", "timeout_minutes": 6}
#45287 no new content 2026-09-13T03:03:56+00:00ended 2026-09-13T03:04:04+00:00 6.8s 0 PDF 12 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 249994, "canonical_name": "West Virginia Law Review", "child_pid": 280488, "download_queue": {"due": 0, "pending": 0, "retries": 0, "scope": "WestVirginiaLawReviewScraper:West Virginia Law Review", "waiting": 0}, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-09-13T03:03:57+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T03:03:56+00:00", "run_kind": "scheduled_active", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1789268636_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1789268636_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#44480 no new content 2026-08-13T23:13:04+00:00ended 2026-08-13T23:13:05+00:00 1.3s 0 PDF 12 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 153708, "canonical_name": "West Virginia Law Review", "child_pid": 2502455, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-08-13T23:13:04+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-08-13T23:13:04+00:00", "run_kind": "scheduled_active", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1786662784_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1786662784_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#43706 no new content 2026-07-14T18:31:07+00:00ended 2026-07-14T18:31:08+00:00 1.3s 0 PDF 12 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 43988, "canonical_name": "West Virginia Law Review", "child_pid": 2960599, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-07-14T18:31:07+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-14T18:31:07+00:00", "run_kind": "scheduled", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1784053867_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1784053867_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 15}
#30981 no new content 2026-07-01T22:02:45+00:00ended 2026-07-01T22:02:46+00:00 1.3s 0 PDF 12 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 28057, "canonical_name": "West Virginia Law Review", "child_pid": 3456927, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-07-01T22:02:45+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-07-01T22:02:45+00:00", "run_kind": "scheduled_active", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1782943365_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1782943365_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#4371 success 2026-06-01T16:22:11+00:00ended 2026-06-01T16:22:15+00:00 4.4s 2 PDF 10 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 1519, "canonical_name": "West Virginia Law Review", "child_pid": 57496, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-06-01T16:22:11+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-06-01T16:22:11+00:00", "run_kind": "scheduled_active", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1780330931_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1780330931_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#3697 no new content 2026-05-01T19:51:34+00:00ended 2026-05-01T19:51:36+00:00 1.2s 0 PDF 10 skipped 0 errors No reported error
Run metadata
{"automation_cycle_id": 608, "canonical_name": "West Virginia Law Review", "child_pid": 988368, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-05-01T19:51:34+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T19:51:34+00:00", "run_kind": "scheduled_active", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1777665094_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1777665094_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#2857 no new content 2026-03-08T19:18:31+00:00ended 2026-03-08T19:18:33+00:00 1.2s 0 PDF 10 skipped 0 errors No reported error
Run metadata
{"canonical_name": "West Virginia Law Review", "child_pid": 2933374, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-03-08T19:18:31+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T19:18:31+00:00", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1772997511_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1772997511_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 45}
#954 success 2026-02-06T18:34:32+00:00ended 2026-02-06T18:34:45+00:00 12.7s 10 PDF 0 skipped 0 errors No reported error
Run metadata
{"canonical_name": "West Virginia Law Review", "child_pid": 4041794, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-02-06T18:34:32+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T18:34:32+00:00", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1770402872_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770402872_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 30}
#951 failed 2026-02-06T18:32:54+00:00ended 2026-02-06T18:32:54+00:00 0.5s 0 PDF 0 skipped 0 errors error: unbalanced parenthesis at position 20
Traceback
Traceback (most recent call last):
  File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 672, in run
    items = await self.discover_urls()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/west_virginia_law_review_scraper.py", line 81, in discover_urls
    for entry in self._parse_issue_items(issue_html, issue_meta):
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/west_virginia_law_review_scraper.py", line 181, in _parse_issue_items
    title = _clean_title(
            ^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/west_virginia_law_review_scraper.py", line 312, in _clean_title
    text = re.sub(r"\(\s*\d+\\s*kb\\s*\\)$", "", text, flags=re.IGNORECASE).strip()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/re/__init__.py", line 185, in sub
    return _compile(pattern, flags).sub(repl, string, count)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/re/__init__.py", line 294, in _compile
    p = _compiler.compile(pattern, flags)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/re/_compiler.py", line 743, in compile
    p = _parser.parse(p, flags)
        ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/re/_parser.py", line 987, in parse
    raise source.error("unbalanced parenthesis")
re.error: unbalanced parenthesis at position 20
Run metadata
{"canonical_name": "West Virginia Law Review", "child_pid": 4038782, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-02-06T18:32:54+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T18:32:54+00:00", "scraper_id": "WestVirginiaLawReviewScraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1770402774_WestVirginiaLawReviewScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770402774_WestVirginiaLawReviewScraper.out.log", "timeout_minutes": 30}

Exact scraper-ID runs

Legacy records explicitly stored under this implementation identifier.

Run Status Started Runtime Result Error / diagnostics Logs
#45893 protected 2026-09-13T22:00:53+00:00ended 2026-09-13T22:01:26+00:00 32.9s 0 PDF 0 skipped 1 errors digital_commons_waf_block: ACCESS_RESTRICTED: Explicit access challenge (HTTP 403); retained for later retry
Run metadata
{"automation_cycle_id": 251566, "canonical_name": "West Virginia Law Review", "child_pid": 2081255, "discovery_coverage": {"capped": true, "collections": {"wvlr": {"attempted": true, "discovery_complete": false, "has_more": false, "known_units": null, "last_completed_at": null, "mode": "pagination", "records_examined": 0, "remaining_units": null, "scope": "https://researchrepository.wvu.edu/wvlr/#oai", "total_records_reported": null, "unit_type": "pages", "visited_units": 0}, "wvlr-online": {"attempted": false, "discovery_complete": false}}, "discovery_complete": false, "known_units": null, "mode": "collections", "remaining_units": null, "scope": "https://researchrepository.wvu.edu/#west-virginia-main-and-online", "selected_units": 0, "visited_this_run": 0, "visited_units": 0}, "discovery_problem": "BROKEN_NETWORK: Digital Commons request failed (NoneType; OSError: curl transport exit 28): https://researchrepository.wvu.edu/wvlr/vol128/iss2/", "download_queue": {"due": 7, "pending": 10, "retries": 3, "scope": "WestVirginiaLawReviewScraper:West Virginia Law Review", "waiting": 3}, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-09-13T22:01:23+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T22:00:53+00:00", "run_kind": "manual", "scraper_id": "west_virginia_law_review_scraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1789336853_west_virginia_law_review_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789336853_west_virginia_law_review_scraper.out.log", "timeout_minutes": 4, "waf_blocked": true}
#45889 partial 2026-09-13T21:52:33+00:00ended 2026-09-13T21:56:34+00:00 240.6s 0 PDF 2 skipped 2 errors partial_download_errors: BROKEN_NETWORK: PDF download exceeded remaining run budget: https://researchrepository.wvu.edu/context/wvlr/article/6498/viewcontent/
Run metadata
{"automation_cycle_id": 251553, "canonical_name": "West Virginia Law Review", "child_pid": 2065292, "cutoff": true, "cutoff_elapsed_seconds": 240, "cutoff_max_runtime_seconds": 240, "cutoff_reason": "max_runtime_seconds", "discovery_coverage": {"capped": true, "collections": {"wvlr": {"attempted": true, "capped": true, "discovery_complete": false, "known_units": 389, "mode": "balanced", "remaining_units": 388, "scope": "https://researchrepository.wvu.edu/wvlr/", "selected_units": 1, "visited_this_run": 1, "visited_units": 1}, "wvlr-online": {"attempted": true, "capped": true, "discovery_complete": false, "known_units": 10, "mode": "balanced", "remaining_units": 9, "scope": "https://researchrepository.wvu.edu/wvlr-online/", "selected_units": 1, "visited_this_run": 1, "visited_units": 1}}, "discovery_complete": false, "known_units": 399, "mode": "collections", "remaining_units": 397, "scope": "https://researchrepository.wvu.edu/#west-virginia-main-and-online", "selected_units": 2, "visited_this_run": 2, "visited_units": 2}, "download_queue": {"due": 8, "pending": 10, "retries": 2, "scope": "WestVirginiaLawReviewScraper:West Virginia Law Review", "waiting": 2}, "file_path": "scrapers/west_virginia_law_review_scraper.py", "heartbeat_at": "2026-09-13T21:56:33+00:00", "heartbeat_source": "orchestrator", "law_review_id": 197, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-09-13T21:52:33+00:00", "run_kind": "manual", "scraper_id": "west_virginia_law_review_scraper", "script_path": "scrapers/west_virginia_law_review_scraper.py", "stderr_path": "logs/orchestrator_runs/1789336353_west_virginia_law_review_scraper.err.log", "stdout_path": "logs/orchestrator_runs/1789336353_west_virginia_law_review_scraper.out.log", "timeout_minutes": 6}