HarvardInternationalLawJournalScraper

Harvard International Law Journal
Latest Status
no_new_content #4289
Latest Metrics
d=0  |  skip=27  |  err=0
t=3.3s
Implementation
PlaywrightScraper
playwright
Law Review
Uploads Pending
0
Last Upload
2026-02-06 11:53:20
uabox:Law_Review_Project/harvard_international_law_journal_20260206_115315.zip

Definition

scraper_id
HarvardInternationalLawJournalScraper
canonical_name
Harvard International Law Journal
institution_code
-
platform
playwright
base_class
PlaywrightScraper
class_name
HarvardInternationalLawJournalScraper
module_path
scrapers.harvard_international_law_journal_scraper
file_path
scrapers/harvard_international_law_journal_scraper.py
has_cli_entrypoint
true
is_abstract
false
discovered_at
2026-03-30 20:11:12
updated_at
2026-06-17 10:09:15

Run History

Showing 7 runs (law_review_id=107) — use ?limit=200 for more.
Run Status Start End Runtime Metrics Error / Details Logs
#4289 no_new_content 2026-05-31T21:52:27+00:00 2026-05-31T21:52:31+00:00 3.3s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"automation_cycle_id": 1508, "canonical_name": "Harvard International Law Journal", "child_pid": 1289919, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-05-31T21:52:27+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-31T21:52:27+00:00", "run_kind": "scheduled_active", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1780264347_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1780264347_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#3610 no_new_content 2026-05-01T18:22:22+00:00 2026-05-01T18:22:25+00:00 2.1s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"automation_cycle_id": 599, "canonical_name": "Harvard International Law Journal", "child_pid": 910332, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-05-01T18:22:22+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T18:22:22+00:00", "run_kind": "scheduled_active", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1777659742_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1777659742_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#2749 no_new_content 2026-03-08T11:50:53+00:00 2026-03-08T11:50:57+00:00 3.0s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 2670556, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-03-08T11:50:53+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T11:50:53+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1772970653_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1772970653_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#725 success 2026-02-06T09:34:44+00:00 2026-02-06T09:35:15+00:00 30.2s d=27  |  skip=0  |  err=0
discovered=27  |  processed=27
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3089041, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:35:14+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:34:44+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370484_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370484_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#724 failed 2026-02-06T09:33:46+00:00 2026-02-06T09:33:47+00:00 0.5s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
AttributeError: 'HarvardInternationalLawJournalScraper' object has no attribute 'max_items'
traceback
Traceback (most recent call last):
  File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 555, in run
    items = await self.discover_urls()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/harvard_international_law_journal_scraper.py", line 105, in discover_urls
    if self.max_items and len(discovered_items) >= self.max_items:
       ^^^^^^^^^^^^^^
AttributeError: 'HarvardInternationalLawJournalScraper' object has no attribute 'max_items'
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3087279, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:33:46+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:33:46+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370426_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370426_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#723 failed 2026-02-06T09:30:21+00:00 2026-02-06T09:30:21+00:00 0.2s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
Error: Page.goto: net::ERR_NAME_NOT_RESOLVED at https://hilj.org/ Call log: - navigating to "https://hilj.org/", waiting until "domcontentloaded"
traceback
Traceback (most recent call last):
  File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 555, in run
    items = await self.discover_urls()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/harvard_international_law_journal_scraper.py", line 32, in discover_urls
    await page.goto(self.base_url, wait_until="domcontentloaded")
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/async_api/_generated.py", line 8975, in goto
    await self._impl_obj.goto(
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_page.py", line 556, in goto
    return await self._main_frame.goto(**locals_to_params(locals()))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_frame.py", line 146, in goto
    await self._channel.send(
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 69, in send
    return await self._connection.wrap_api_call(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 558, in wrap_api_call
    raise rewrite_error(error, f"{parsed_st['apiName']}: {error}") from None
playwright._impl._errors.Error: Page.goto: net::ERR_NAME_NOT_RESOLVED at https://hilj.org/
Call log:
  - navigating to "https://hilj.org/", waiting until "domcontentloaded"

extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3081270, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:30:21+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:30:21+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370221_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370221_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#588 no_items 2026-02-06T02:14:58+00:00 2026-02-06T02:14:59+00:00 0.2s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 2204758, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T02:14:58+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T02:14:58+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770344098_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770344098_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 20}
stdout | stderr

Runs (scraper_name = HarvardInternationalLawJournalScraper)

These are runs recorded explicitly under this scraper_id.
Run Status Start End Runtime Metrics Error / Details Logs
#4289 no_new_content 2026-05-31T21:52:27+00:00 2026-05-31T21:52:31+00:00 3.3s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"automation_cycle_id": 1508, "canonical_name": "Harvard International Law Journal", "child_pid": 1289919, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-05-31T21:52:27+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-31T21:52:27+00:00", "run_kind": "scheduled_active", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1780264347_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1780264347_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#3610 no_new_content 2026-05-01T18:22:22+00:00 2026-05-01T18:22:25+00:00 2.1s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"automation_cycle_id": 599, "canonical_name": "Harvard International Law Journal", "child_pid": 910332, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-05-01T18:22:22+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-05-01T18:22:22+00:00", "run_kind": "scheduled_active", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1777659742_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1777659742_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#2749 no_new_content 2026-03-08T11:50:53+00:00 2026-03-08T11:50:57+00:00 3.0s d=0  |  skip=27  |  err=0
discovered=27  |  processed=27
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 2670556, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-03-08T11:50:53+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-03-08T11:50:53+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1772970653_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1772970653_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 45}
stdout | stderr
#725 success 2026-02-06T09:34:44+00:00 2026-02-06T09:35:15+00:00 30.2s d=27  |  skip=0  |  err=0
discovered=27  |  processed=27
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3089041, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:35:14+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:34:44+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370484_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370484_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#724 failed 2026-02-06T09:33:46+00:00 2026-02-06T09:33:47+00:00 0.5s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
AttributeError: 'HarvardInternationalLawJournalScraper' object has no attribute 'max_items'
traceback
Traceback (most recent call last):
  File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 555, in run
    items = await self.discover_urls()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/harvard_international_law_journal_scraper.py", line 105, in discover_urls
    if self.max_items and len(discovered_items) >= self.max_items:
       ^^^^^^^^^^^^^^
AttributeError: 'HarvardInternationalLawJournalScraper' object has no attribute 'max_items'
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3087279, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:33:46+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:33:46+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370426_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370426_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#723 failed 2026-02-06T09:30:21+00:00 2026-02-06T09:30:21+00:00 0.2s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
Error: Page.goto: net::ERR_NAME_NOT_RESOLVED at https://hilj.org/ Call log: - navigating to "https://hilj.org/", waiting until "domcontentloaded"
traceback
Traceback (most recent call last):
  File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 555, in run
    items = await self.discover_urls()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/sites/lrscraper/scrapers/harvard_international_law_journal_scraper.py", line 32, in discover_urls
    await page.goto(self.base_url, wait_until="domcontentloaded")
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/async_api/_generated.py", line 8975, in goto
    await self._impl_obj.goto(
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_page.py", line 556, in goto
    return await self._main_frame.goto(**locals_to_params(locals()))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_frame.py", line 146, in goto
    await self._channel.send(
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 69, in send
    return await self._connection.wrap_api_call(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arbel/miniconda3/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 558, in wrap_api_call
    raise rewrite_error(error, f"{parsed_st['apiName']}: {error}") from None
playwright._impl._errors.Error: Page.goto: net::ERR_NAME_NOT_RESOLVED at https://hilj.org/
Call log:
  - navigating to "https://hilj.org/", waiting until "domcontentloaded"

extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 3081270, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T09:30:21+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T09:30:21+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770370221_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770370221_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 25}
stdout | stderr
#588 no_items 2026-02-06T02:14:58+00:00 2026-02-06T02:14:59+00:00 0.2s d=0  |  skip=0  |  err=0
discovered=0  |  processed=0
-
extra_json
{"canonical_name": "Harvard International Law Journal", "child_pid": 2204758, "file_path": "scrapers/harvard_international_law_journal_scraper.py", "heartbeat_at": "2026-02-06T02:14:58+00:00", "heartbeat_source": "orchestrator", "law_review_id": 107, "orchestrator": "lrscraper", "orchestrator_started_at": "2026-02-06T02:14:58+00:00", "scraper_id": "HarvardInternationalLawJournalScraper", "script_path": "scrapers/harvard_international_law_journal_scraper.py", "stderr_path": "logs/orchestrator_runs/1770344098_HarvardInternationalLawJournalScraper.err.log", "stdout_path": "logs/orchestrator_runs/1770344098_HarvardInternationalLawJournalScraper.out.log", "timeout_minutes": 20}
stdout | stderr