[Journal of Legal Analysis] Cloudflare challenge detected, waiting longer... [Journal of Legal Analysis] HTTP 403 for https://academic.oup.com/jla/issue-archive (attempt 1/3) [Journal of Legal Analysis] Waiting 17.7s before retry... [Journal of Legal Analysis] Cloudflare challenge detected, waiting longer... [Journal of Legal Analysis] HTTP 403 for https://academic.oup.com/jla/issue-archive (attempt 2/3) [Journal of Legal Analysis] Waiting 16.6s before retry... [Journal of Legal Analysis] Cloudflare challenge detected, waiting longer... [Journal of Legal Analysis] HTTP 403 for https://academic.oup.com/jla/issue-archive (attempt 3/3) Traceback (most recent call last): File "/home/arbel/sites/lrscraper/scrapers/journal_of_legal_analysis_scraper.py", line 520, in asyncio.run(main()) File "/home/arbel/miniconda3/lib/python3.11/asyncio/runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "/home/arbel/miniconda3/lib/python3.11/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/arbel/miniconda3/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "/home/arbel/sites/lrscraper/scrapers/journal_of_legal_analysis_scraper.py", line 516, in main await scraper.run() File "/home/arbel/sites/lrscraper/scrapers/journal_of_legal_analysis_scraper.py", line 505, in run await super().run() File "/home/arbel/sites/lrscraper/light_base_scraper.py", line 555, in run items = await self.discover_urls() ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/arbel/sites/lrscraper/scrapers/journal_of_legal_analysis_scraper.py", line 98, in discover_urls raise RuntimeError( RuntimeError: Blocked by Cloudflare/Oxford Academic bot protection at https://academic.oup.com/jla/issue-archive; automated scraping requires a human browser session or a residential proxy.