@@ -91,6 +91,7 @@ async def _get_problem_data(self, problem_slug: str) -> Dict[str, str]:
9191 query = """
9292 query getQuestionDetail($titleSlug: String!) {
9393 question(titleSlug: $titleSlug) {
94+ freqBar
9495 questionId
9596 questionFrontendId
9697 boundTopicId
@@ -222,6 +223,10 @@ async def tags(self, problem_slug: str) -> List[str]:
222223 data = await self ._get_problem_data (problem_slug )
223224 return list (map (lambda x : x .slug , data .topic_tags ))
224225
226+ async def freq_bar (self , problem_slug : str ) -> float :
227+ data = await self ._get_problem_data (problem_slug )
228+ return data .freq_bar or 0
229+
225230
226231class LeetcodeNote (genanki .Note ):
227232 @property
@@ -286,8 +291,11 @@ async def generate_anki_note(
286291 * 100
287292 )
288293 ),
294+ str (await leetcode_data .freq_bar (leetcode_task_handle )),
289295 ],
290296 tags = await leetcode_data .tags (leetcode_task_handle ),
297+ # FIXME: sort field doesn't work doesn't work
298+ sort_field = str (await leetcode_data .freq_bar (leetcode_task_handle )).zfill (3 ),
291299 )
292300
293301
@@ -308,6 +316,7 @@ async def generate(start: int, stop: int) -> None:
308316 {"name" : "SubmissionsTotal" },
309317 {"name" : "SubmissionsAccepted" },
310318 {"name" : "SumissionAcceptRate" },
319+ {"name" : "Frequency" },
311320 # TODO: add hints
312321 ],
313322 templates = [
@@ -322,6 +331,11 @@ async def generate(start: int, stop: int) -> None:
322331 ({{SumissionAcceptRate}}%)
323332 <br/>
324333 <b>Topic:</b> {{Topic}}<br/>
334+ <b>Frequency:</b>
335+ <progress value="{{Frequency}}" max="100">
336+ {{Frequency}}%
337+ </progress>
338+ <br/>
325339 <b>URL:</b>
326340 <a href='https://leetcode.com/problems/{{Slug}}/'>
327341 https://leetcode.com/problems/{{Slug}}/
0 commit comments