diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2025-12-01 20:07:41 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2025-12-01 20:07:41 +0800 |
| commit | b55ea16baba3f387a1eece3b60adcbd4db98f6be (patch) | |
| tree | 5809aa9bfd92b64fb51429ba3258c2996d9a7970 /2025/fetch.rs | |
| parent | 8128b4edcaca761585f6ab81c7c4a9aaff763532 (diff) | |
init: 2025
Diffstat (limited to '2025/fetch.rs')
| -rw-r--r-- | 2025/fetch.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/2025/fetch.rs b/2025/fetch.rs new file mode 100644 index 0000000..6c02a8f --- /dev/null +++ b/2025/fetch.rs @@ -0,0 +1,29 @@ +use std::{env, sync::Arc}; + +use reqwest::{Url, blocking::Client, cookie::Jar}; + +const YEAR: usize = 2025; + +pub fn fetch(lv: usize) -> Vec<String> { + let jar = Arc::new(Jar::default()); + jar.add_cookie_str( + &format!( + "session={}", + env::var("AOC_SESSION").unwrap() + ), + &Url::parse("https:///adventofcode.com").unwrap(), + ); + + Client::builder() + .cookie_provider(jar) + .build() + .unwrap() + .get(format!("https://adventofcode.com/{YEAR}/day/{lv}")) + .send() + .unwrap() + .text() + .unwrap() + .lines() + .map(|s| s.to_string()) + .collect() +} |
