背景: 写博客的时候每当新增 LeetCode 题解时都需要在 LeetCode/README 手动更新表格, 非常费劲。因此构思了 crd-leetcode-cli 插件实现自动化同步更新 leetcode ac 题解为 markdown table 。

crd-leetcode-cli 提供将 leetcode 中已 AC 的题目转化为 markdown 表格的能力。

安装

执行 yarn add crd-leetcode-cli -g, 国内用户可以执行 cnpm install crd-leetcode-cli -g

使用

leetcode download       // 增量拉取 AC 题目(若无登录, 则会先执行登录逻辑)
leetcode download -a    // 全量拉取 AC 题目
leetcode login          // 登录
leetcode logout         // 登出

接入项目示例

自定义渲染表格

插件提供了自定义渲染 markdown table 的能力。

  • 在项目根目录创建 config.js 文件。
  • 在 config.js 内自定义生成 markdown 的 transform_markdown_table 函数。
const transform_markdown_table = (dataArr) => {const beforeDescription = `The markdown table is generated by [crd-leetcode-cli](https://github.com/MuYunyun/create-react-doc/tree/master/packages/leetcode-cli)`;let result = beforeDescription + 'n' +'| # | Title | Explanation | Difficulty | Type |' +'n' +'|:---:|:---:|:---:|:---:|:---:|';for (let i = 0; i < dataArr.length; i++) {result += `n| ${dataArr[i].questionId} | [${dataArr[i].title}](https://leetcode.com/problems/${dataArr[i].titleSlug}/) | [Analyze](https://github.com/MuYunyun/blog/blob/master/LeetCode/${dataArr[i].questionId}.${dataArr[i].title.split(' ').join('_')}.md) | ${dataArr[i].difficulty} | ${dataArr[i].topicTags} |`;}return result;
};module.exports = { transform_markdown_table }

通过自定义 transform_markdown_table 函数, 便可得到如下 markdown table:

技术细节

  • 使用 puppeteer 登录 leetcode 获取 cookie 信息。
  • 获取 cookie 后, 使用 graphql-request 调用 graphql 接口获取题目详情信息。
  • 自定义生成 markdown table。

中leetcode提示未登录_分享一款将 LeetCode 中 AC 的题目转化为 MarkDown 表格的插件...相关推荐

  1. idea中leetcode提示未登录_IntelliJ IDEA中LeetCode插件配置问题代码解析

    本篇文章小编给大家分享一下IntelliJ IDEA中LeetCode插件配置问题代码解析,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 首先是在In ...

  2. 数据采集时总提示未登录_个税申报系统新功能!申报数据丢了也能找回!|税务局|个税|办税服务厅|纳税...

    最近一家房地产销售公司的李会计向我们咨询个税申报数据找回相关事宜,今天我们就来聊聊这个问题. "我们公司电脑坏了,之前申报的个人所得税数据都丢了,请问这历史申报数据还能找回吗?我该怎么办呀! ...

  3. 数据采集时总提示未登录_做电商必须学会这一招!教你用爬虫工具免费采集网易考拉商品数据...

    本文主要介绍如何使用后羿采集器的智能模式,免费采集网易考拉商品的价格.累计评价.商品图片等信息. 采集工具简介: 后羿采集器是一款基于人工智能技术的网络爬虫软件,只需要输入网址就能够自动识别网页数据, ...

  4. IE浏览器访问BIEE报表,提示未登录解决办法

    最近在做项目的过程中涉及了一个IE浏览器的兼容性问题,Google浏览器和360浏览器都能够正常访问选项卡上的请求链接.但是在IE浏览器中却总是提示未登录,请登录. 1.BIEE页面跳转不了 一开始以 ...

  5. 开机未发现nvidia控制面板_Windows10或者其他操作系统开机提示“未发现NVIDIA控制面板,从Microsoft Store中安装NVIDIA控制面板”的解决办法...

    昨天深夜,有一个朋友加QQ说他电脑出了问题,不知道咋的就变成了提示"未发现NVIDIA控制面板,从Microsoft Store中安装NVIDIA控制面板" 里面数据还是挺重要的, ...

  6. 提示未登录,点确认,跳到登陆页

    提示未登录,点确认,跳到登陆页 ClientScript.RegisterClientScriptBlock(GetType(), "", "<script> ...

  7. postman发送请求提示未登录解决办法

    postman发送请求提示未登录解决办法 1.问题 2.解决办法 1.问题 postman发送get请求,提示未登录 2.解决办法 浏览器安装Postman Interceptor扩展程序并打开 po ...

  8. html页面打印插件,分享8款网站开发中最好用的打印页面插件

    原标题:分享8款网站开发中最好用的打印页面插件 通常浏览器是通过打印命令来确定需要打印的内容,但它可以在 jQuery 插件打印页面插件的帮助下打印一个特定区域的内容..因此,您可以使用这些 jQue ...

  9. win10可用空间变成未分配_有关如何在win10系统中对未分配的磁盘空间进行分区的详细教程...

    win10系统已经使用了很长时间,许多网民都报告了对win10系统未分配磁盘空间进行分区的方法. 在使用win10系统的过程中,他们通常不知道如何对win10系统的未分配磁盘空间进行分区. 对于设置, ...

最新文章

  1. 列表推导式 生成器表达式
  2. 【深度学习】CNN模型的可视化-1
  3. Selenium碰到的异常记录
  4. 计算机操作系统(第3版)课后习题答案(完整版)
  5. Linux 将本地文件上传Linux服务器, 即ssh 命令上传本地文件
  6. FPGA语法篇——Verilog 语法知识
  7. 爬取豆瓣电影排行版数据
  8. PHP PYTHON RUBY PERL
  9. Netstat -tln 命令是Linux查看端口使用情况
  10. 【大数据技术应用实战】【大数据与人工智能视角下数字孪生和元宇宙】二、新一轮大数据与人工智能变革
  11. 2012春节快到了我们聚会吧!
  12. Python——绑定与方法调用
  13. oracle密码过期策略管理
  14. Oracle 数据库导出数据库语句
  15. 股票编辑器财务数据关键字说明
  16. 使用pyinstall将python+qt的py文件打包为exe
  17. 文件操作函数在VFS层的实现
  18. 【FXCG】丹尼斯的交易史
  19. ISO15693协议的Inventory
  20. ADS7886的驱动

热门文章

  1. 文献记录(part81)--Clustering-based k -nearest neighbor classification for large-scale data with ...
  2. python面向对象(part1)--类和对象
  3. springboot事务回滚源码_002 | 搭上SpringBoot事务源码分析专车
  4. 张俊红22岁年度总结
  5. 【leetcode记录03】动态规划
  6. SAP UI5 应用开发教程之六十二 - 基于 OData V4 的 SAP UI5 表格控件使用方法介绍
  7. SAP UI5 应用开发教程之十二 - 使用 CSS 类对 UI 进行进一步美化
  8. SAP Spartacus里的bootstrap button usage
  9. SAP Spartacus page slot里的Component,对应的DOM节点是如何插入到DOM tree里的
  10. Cloud for Customer下拉菜单code list restriction CLR的实现原理