@@ -100,47 +100,59 @@ pub fn get_problems() -> Option<Problems> {
100
100
let headers = {
101
101
let mut h = reqwest:: header:: HeaderMap :: new ( ) ;
102
102
h. insert (
103
- "User-Agent " ,
103
+ "Accept " ,
104
104
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 " ,
106
106
) ,
107
107
) ;
108
108
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 " ) ,
111
111
) ;
112
112
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 " ) ,
115
115
) ;
116
116
h. insert (
117
- "Content-Type " ,
118
- reqwest:: header:: HeaderValue :: from_static ( "application/json " ) ,
117
+ "Connection " ,
118
+ reqwest:: header:: HeaderValue :: from_static ( "keep-alive " ) ,
119
119
) ;
120
120
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
+ ) ,
123
125
) ;
124
126
h. insert (
125
- "Host " ,
126
- reqwest:: header:: HeaderValue :: from_static ( "www.leetcode.com " ) ,
127
+ "Sec-Fetch-Dest " ,
128
+ reqwest:: header:: HeaderValue :: from_static ( "document " ) ,
127
129
) ;
128
130
h. insert (
129
- "X-Requested-With " ,
130
- reqwest:: header:: HeaderValue :: from_static ( "XMLHttpRequest " ) ,
131
+ "Sec-Fetch-Mode " ,
132
+ reqwest:: header:: HeaderValue :: from_static ( "navigate " ) ,
131
133
) ;
132
-
133
134
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" ) ,
136
137
) ;
137
138
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" ) ,
142
145
) ;
143
146
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
+ ) ;
144
156
h
145
157
} ;
146
158
let client = reqwest:: blocking:: Client :: builder ( )
0 commit comments