Skip to content

Commit 82bb382

Browse files
committed
Add dotenv to input Cookie
1 parent 1ba0bb1 commit 82bb382

File tree

2 files changed

+37
-22
lines changed

2 files changed

+37
-22
lines changed

.gitignore

+4-1
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,7 @@ target/
88
Cargo.lock
99

1010
# These are backup files generated by rustfmt
11-
**/*.rs.bk
11+
**/*.rs.bk
12+
13+
# Dotenv file
14+
.env

src/fetcher.rs

+33-21
Original file line numberDiff line numberDiff line change
@@ -100,47 +100,59 @@ pub fn get_problems() -> Option<Problems> {
100100
let headers = {
101101
let mut h = reqwest::header::HeaderMap::new();
102102
h.insert(
103-
"User-Agent",
103+
"Accept",
104104
reqwest::header::HeaderValue::from_static(
105-
"Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0",
105+
"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8",
106106
),
107107
);
108108
h.insert(
109-
"Referer",
110-
reqwest::header::HeaderValue::from_static("www.leetcode.com"),
109+
"Accept-Encoding",
110+
reqwest::header::HeaderValue::from_static("gzip, deflate, br"),
111111
);
112112
h.insert(
113-
"Origin",
114-
reqwest::header::HeaderValue::from_static("www.leetcode.com"),
113+
"Accept-Language",
114+
reqwest::header::HeaderValue::from_static("en-US;q=0.7,en;q=0.3"),
115115
);
116116
h.insert(
117-
"Content-Type",
118-
reqwest::header::HeaderValue::from_static("application/json"),
117+
"Connection",
118+
reqwest::header::HeaderValue::from_static("keep-alive"),
119119
);
120120
h.insert(
121-
"Accept",
122-
reqwest::header::HeaderValue::from_static("application/json"),
121+
"User-Agent",
122+
reqwest::header::HeaderValue::from_static(
123+
"Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0",
124+
),
123125
);
124126
h.insert(
125-
"Host",
126-
reqwest::header::HeaderValue::from_static("www.leetcode.com"),
127+
"Sec-Fetch-Dest",
128+
reqwest::header::HeaderValue::from_static("document"),
127129
);
128130
h.insert(
129-
"X-Requested-With",
130-
reqwest::header::HeaderValue::from_static("XMLHttpRequest"),
131+
"Sec-Fetch-Mode",
132+
reqwest::header::HeaderValue::from_static("navigate"),
131133
);
132-
133134
h.insert(
134-
"Cookie",
135-
reqwest::header::HeaderValue::from_static("csrftoken=CmUTtU5KRa6cnCggj1H5EvhJvJ3tPytP4G82GuH5Q6t7CFFCZkD3FBbQLyE7KCe5; _ga_CDRWKZTDEX=GS1.1.1710580144.71.1.1710580189.15.0.0; _ga=GA1.2.1781999148.1688193072; gr_user_id=88d74b3a-9d56-40ac-aa14-499bc1aa41ae; __stripe_mid=3c5f9c92-a334-4c8f-af94-f0bfdef4406d10a818; cf_clearance=dnt.AMZ.ey0VqTrqSI1PcyxNTEEgyuBxMnEgNXwdKg8-1710580164-1.0.1.1-ESw5ZmKLb5G1GAquNkjZ9uQZX0VXDk3wzqYSRG6X4IB4pwKKPs8uUME9DOB8O_pQKftpAVv8MNr1UIcVIbsK3g; __gads=ID=3361b3060affd9e4-2233a6c8d3e70007:T=1699180244:RT=1710580185:S=ALNI_MYf4cBTAmgXxlZcF6XRWPq5c_6Y9w; __gpi=UID=00000a4002b8045b:T=1699180244:RT=1710580185:S=ALNI_Ma77MyW1F0CFb2ShFHhCMjWdbg-FA; __eoi=ID=820ea8f483341efc:T=1708869842:RT=1710580185:S=AA-AfjYICQ6p1w7uMqbWbzsohL9i; INGRESSCOOKIE=891032c5aa2f9fbd7d738f9d9e0fb367|8e0876c7c1464cc0ac96bc2edceabd27; messages=.eJyLjlaKj88qzs-Lz00tLk5MT1XSMdAxMtVRCi5NTgaKpJXm5FQqFGem56WmKGTmKSQWK4Rn5pWkFhWlZhan6inF6lBqQCwAycQt5Q:1rlQ2o:XBVIUKIIB5Qf8zuE7xQnOzI4sSATQtIXbRavklBO7Uo; __cf_bm=WyH_WYeQsNxke9oPYFf3fV0Dd.dsDZjY_0kpU.mCYmQ-1710580060-1.0.1.1-wy5AlTIGVY153Zjay9yh0dbD2vdxbVPF_eZ9QNhjZYf.7NBY5.SVHQgwluaVzUaKEu12bBnujttv8l3h7iTlmQ; _gid=GA1.2.1877820459.1710580151; _dd_s=rum=0&expire=1710581747104; 87b5a3c3f1a55520_gr_session_id=5cdbc5e1-7d0b-4728-9b9b-2a8da15a29da; 87b5a3c3f1a55520_gr_session_id_sent_vst=5cdbc5e1-7d0b-4728-9b9b-2a8da15a29da; LEETCODE_SESSION=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJfYXV0aF91c2VyX2lkIjoiMTE1NDc4NSIsIl9hdXRoX3VzZXJfYmFja2VuZCI6ImRqYW5nby5jb250cmliLmF1dGguYmFja2VuZHMuTW9kZWxCYWNrZW5kIiwiX2F1dGhfdXNlcl9oYXNoIjoiNjQwZTZlOGYxY2MxYzIwNThmYTQzZmRiYzg5YTE4YjQzYmMxOTQ2NDg4MjZmNTVhOGE1Mjg0MDlmN2E3N2U3MiIsImlkIjoxMTU0Nzg1LCJlbWFpbCI6InRhbndlaTA0MDRAMTYzLmNvbSIsInVzZXJuYW1lIjoiV2ludGVycmVpc2UiLCJ1c2VyX3NsdWciOiJXaW50ZXJyZWlzZSIsImF2YXRhciI6Imh0dHBzOi8vYXNzZXRzLmxlZXRjb2RlLmNvbS91c2Vycy9kZWZhdWx0X2F2YXRhci5qcGciLCJyZWZyZXNoZWRfYXQiOjE3MTA1ODAxNzQsImlwIjoiNTAuMTE0LjU5LjciLCJpZGVudGl0eSI6Ijc0YjFmYjhkNjAzNjFiNDZjMDJhODVkNWJiMzYyM2YzIiwic2Vzc2lvbl9pZCI6NTc3MDI3NDUsIl9zZXNzaW9uX2V4cGlyeSI6MTIwOTYwMH0.BpXtHQRLNVglW2kKCNmfn0wjRJnZXSlZBifgSN5MYrU; 87b5a3c3f1a55520_gr_last_sent_sid_with_cs1=5cdbc5e1-7d0b-4728-9b9b-2a8da15a29da; 87b5a3c3f1a55520_gr_last_sent_cs1=Winterreise; 87b5a3c3f1a55520_gr_cs1=Winterreise; FCNEC=%5B%5B%22AKsRol9Jk56X9bgfDJ14RByWNi3b99Ls0jClosKGrQEGlQVsUDZLEPKJJcwNlXmrE4VTsWBCMZGQZaR4d7YjZTpbcjgsdZTovy60ngj4hyRybBNQAq52Vx_NF6oL76ux6L5GU8jHkX9GKu-Q5XUc8TC9AfIAHKVLEg%3D%3D%22%5D%5D"),
135+
"Sec-Fetch-Site",
136+
reqwest::header::HeaderValue::from_static("none"),
136137
);
137138
h.insert(
138-
"x-csrftoken",
139-
reqwest::header::HeaderValue::from_static(
140-
"CmUTtU5KRa6cnCggj1H5EvhJvJ3tPytP4G82GuH5Q6t7CFFCZkD3FBbQLyE7KCe5",
141-
),
139+
"Sec-Fetch-User",
140+
reqwest::header::HeaderValue::from_static("?1"),
141+
);
142+
h.insert(
143+
"Upgrade-Insecure-Requests",
144+
reqwest::header::HeaderValue::from_static("1"),
142145
);
143146

147+
h.insert(
148+
"Host",
149+
reqwest::header::HeaderValue::from_static("leetcode.com"),
150+
);
151+
h.insert(
152+
"Cookie",
153+
std::env::var("LEETCODE_COOKIE")
154+
.expect("Please set LEETCODE_COOKIE in .env file or environment"),
155+
);
144156
h
145157
};
146158
let client = reqwest::blocking::Client::builder()

0 commit comments

Comments
 (0)