MCPcopy
hub / github.com/doocs/leetcode / run

Function run

solution/main.py:438–522  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

436
437
438def run():
439 # 加载 cookies
440 cookie_cn, cookie_en = load_cookies()
441 spider = Spider(cookie_cn, cookie_en)
442
443 # 是否刷新所有题目
444 refresh_all = load_refresh_config()
445
446 question_details = {}
447 if not refresh_all:
448 for item in load_result():
449 slug = item.get("question_title_slug")
450 if slug:
451 question_details[slug] = item
452
453 for q in spider.get_all_questions_v2(retry=6):
454 try:
455 slug = q["stat"]["question__title_slug"]
456 qid = q["stat"]["frontend_question_id"]
457 except:
458 slug = q["titleSlug"]
459 qid = int(q["frontendQuestionId"])
460 if slug in question_details:
461 continue
462 detail = spider.get_question_detail(
463 slug, retry=4
464 ) or spider.get_question_detail_en(slug, retry=8)
465 if not detail:
466 continue
467 time.sleep(1)
468 question_details[slug] = Spider.format_question_detail(
469 detail, str(qid).zfill(4)
470 )
471
472 # 周赛场次列表
473 contest_list = get_contests(refresh_all)
474 cls = []
475 for contest in contest_list:
476 contest_title = contest["contest_title"]
477 contest_title_en = contest["contest_title_en"]
478 contest_question_list = []
479 for slug in contest["question_slugs"]:
480 if slug in question_details:
481 detail = question_details.get(slug)
482 # 给题目详情添加周赛信息
483 detail["md_table_row_cn"][4] = contest_title
484 detail["md_table_row_en"][4] = contest_title_en
485
486 # 给周赛信息添加题目详情
487 add = [
488 detail["frontend_question_id"],
489 detail["title_cn"],
490 detail["title_en"],
491 detail["relative_path_cn"],
492 detail["relative_path_en"],
493 ]
494 contest_question_list.append(add)
495

Callers 1

main.pyFile · 0.70

Calls 15

get_all_questions_v2Method · 0.95
get_question_detailMethod · 0.95
load_cookiesFunction · 0.85
SpiderClass · 0.85
load_refresh_configFunction · 0.85
load_resultFunction · 0.85
get_contestsFunction · 0.85
listStruct · 0.85
save_resultFunction · 0.85
generate_readmeFunction · 0.85
generate_question_readmeFunction · 0.85

Tested by

no test coverage detected