cp.nvim/scrapers
Barrett Ruth 2161ad5020
feat(codeforces): implement validated login with browser session
Problem: Codeforces credentials were cached without verification,
identical to the AtCoder issue.

Solution: add `_login_headless_cf()` that loads cookies, checks for
the "Logout" link, navigates to `/enter` with Cloudflare solving if
needed, and validates success post-login. Cookies persisted only on
confirmed login.
2026-03-05 15:00:16 -05:00
..
__init__.py lol 2025-09-24 21:23:06 -04:00
atcoder.py feat(atcoder): implement validated login with browser session 2026-03-05 15:00:06 -05:00
base.py feat(scraper): add LoginResult model and abstract login() interface 2026-03-05 14:59:46 -05:00
codechef.py fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
codeforces.py feat(codeforces): implement validated login with browser session 2026-03-05 15:00:16 -05:00
cses.py feat(cses): implement validated login via _check_token/_web_login 2026-03-05 14:59:55 -05:00
kattis.py fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
language_ids.py feat(atcoder): extract submit helpers; add live status notifications (#294) 2026-03-04 19:27:29 -05:00
models.py feat(scraper): add LoginResult model and abstract login() interface 2026-03-05 14:59:46 -05:00
timeouts.py fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
usaco.py fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00