Python爬虫实现Leetcode内容抓取
背景
最初只是想简单地抓取自己的提交记录保存下来,便于查看。
写着写着就附加实现了一些其他的功能…
从Leetcode上获取到的数据有如下几种:
- 刷题进度
- 喜欢的题
- TOP榜单
- 所有题目
- 题目详情,包括题目内容、提示等
- 题目提交记录
- 标签分类的题
由于没有会员,抓不到公司的所有分类题目,TOP榜单里抓到了FLAG的最受欢迎的题。
需要的库
采用最基础原始的写法,使用:
- re
- json
- requests
- pymysql
API
- 登录:https://leetcode.com/accounts/login/
- 刷题进度:https://leetcode.com/api/progress/all/
- 所有的题:https://leetcode.com/api/problems/all
- 标签分类题目:https://leetcode.com/problems/api/tags/
- 题目内容、喜欢列表(隐含TOP榜单)、提交记录:https://leetcode.com/graphql/
登录
不登录也可爬取的部分:
- 所有题目
- 标签分类的题
- 题目详情,包括题目内容、提示等
必须要登录的部分:
- 刷题进度
- 喜欢的题(隐含TOP榜单)
- 题目提交记录
爬虫地址
放在Github中托管:LeetcodeManager
- 本文链接:http://katherineleeyq.cn/2019/02/22/Python爬虫实现Leetcode内容抓取/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!