Categorygithub.com/mmzou/geektime-dl
modulepackage
0.0.0-20221014061536-76ae43cdecbc
Repository: https://github.com/mmzou/geektime-dl.git
Documentation: pkg.go.dev

# README

geektime-dl

Go Report Card GitHub release

👾 Geektime-dl 是使用Go构建的快速、简单的 极客时间 下载器,并支持专栏下载为PDF文档。

视频下载已失效: 极客时间的视频是采用的阿里云视频私有加密方式,暂时无破解方法!

安装

必要条件

以下为必须安装依赖:

Note: FFmpeg的使用是为了最后视频文件合并成需要的格式。

Note: 借助chromedp/chromedp工具导出页面为PDF文档,该功能需要谷歌浏览器的支持。

使用go get安装

安装Geektime-dl,可以使用如下go get命令,或者从Releases 页面下载二进制文件.

$ go get github.com/mmzou/geektime-dl

入门

使用方法:

#下载
geektime-dl [OPTIONS] 课程ID  [目录ID]
#查看专栏、视频,登录及其他命令操作
geektime-dl [OPTIONS] command

包含命令

  login    登录极客时间
  who      获取当前帐号
  users    获取帐号列表
  su       切换极客时间帐号
  buy      获取已购买过的专栏和视频课程
  column   获取专栏列表
  video    获取视频课程列表
  help, h  帮助

视频和专栏的下载

只能下载已购买或者免费部分的视频、专栏。

$ geektime-dl 66
01 - 什么是微服务架构? 107.55 MiB / 107.54 MiB [==================================] 100.01% 1.42 MiB/s 1m15s
02 - 架构师如何权衡微服务的利弊? 92.10 MiB / 92.09 MiB [============================] 100.01% 1.69 MiB/s 54s
03 - 康威法则和微服务给架构师怎样的启示? 69.38 MiB / 69.38 MiB [=====================] 100.01% 1.68 MiB/s 41s
04 - 企业应该在什么时候开始考虑引入微服务? 114.20 MiB / 114.20 MiB [==================] 100.00% 1.41 MiB/s 1m21s
05 - 什么样的组织架构更适合微服务? 121.10 MiB / 121.09 MiB [========================] 100.00% 1.66 MiB/s 1m13s
06 - 如何理解阿里巴巴提出的微服务中台战略?65.23 MiB / 126.82 MiB [==========>---------] 51.43% 1.68 MiB/s 1m15s

只需下载课程中的某个目录

$ geektime-dl 66 2276
16 - 微服务监控系统分层和监控架构 11.22 MiB / 97.55 MiB [======>--------------------]  28.51% 1.30 MiB/s 01m06s

下载专栏时,可以同时下载专栏文章内容为PDF文档(需要谷歌浏览器支持

04 - 静态容器:办公用品如何表达你的内容? 13.94 MiB / 13.94 MiB [===================] 100.00% 2.23 MiB/s 6s
正在生成文件:【04 - 静态容器:办公用品如何表达你的内容?.pdf】 完成

: 如果生成文件提示失败,可以重复执行命令针对失败的文件再次生成,已生成的文件不会重复生成。如果尝试多次都是失败,可以Issues提问。

查看课程中可下载的目录

$ geektime-dl -i 66
+----+------+------+----------------------------------------------+---------+---------+---------+------+
| #  |  ID  | 类型 |                     名称                     |   SD    |   LD    |   HD    | 下载 |
+----+------+------+----------------------------------------------+---------+---------+---------+------+
|  0 | 2184 | 视频 | 01 什么是微服务架构?                         | 86.52M  | 53.45M  | 107.54M |  ✔   |
|  1 | 2185 | 视频 | 02 架构师如何权衡微服务的利弊?                 | 71.43M  | 44.12M  | 92.09M  |  ✔   |
|  2 | 2154 | 视频 | 03 康威法则和微服务给架构师怎样的启示?          | 54.32M  | 33.57M  | 69.38M  |  ✔   |
|  3 | 2186 | 视频 | 04 企业应该在什么时候开始考虑引入微服务?        | 90.07M  | 55.67M  | 114.20M |  ✔   |
|  4 | 2187 | 视频 | 05 什么样的组织架构更适合微服务?               | 90.22M  | 55.79M  | 121.09M |  ✔   |
|  5 | 2188 | 视频 | 06 如何理解阿里巴巴提出的微服务中台战略?        | 126.82M | 100.05M | 61.79M  |  ✔   |
|  6 | 2189 | 视频 | 07 如何给出一个清晰简洁的服务分层方式?          | 45.89M  | 62.07M  | 61.95M  |  ✔   |
|  7 | 2222 | 视频 | 08 微服务总体技术架构体系是怎样设计的?          | 85.67M  | 52.91M  | 109.83M |  ✔   |
|  8 | 2269 | 视频 | 09 微服务最经典的三种服务发现机制               | 94.00M  | 73.18M  | 45.21M  |  ✔   |

查看视频或专栏列表

#查看专栏列表
$ geektime-dl column
+----+-----+---------------------------+------------+------------------+------+
| #  | ID  |           名称            |    时间    |       作者       | 购买 |
+----+-----+---------------------------+------------+------------------+------+
|  0 |  42 | 技术与商业案例解读          | 2017-09-07 | 徐飞             |      |
|  1 |  43 | AI技术内参                | 2017-09-11 | 洪亮劼           |      |
|  2 |  48 | 左耳听风                  | 2017-09-20 | 陈皓             | 是   |
|  3 |  49 | 朱赟的技术管理课           | 2017-11-09 | 朱赟             | 是   |
|  4 |  50 | 邱岳的产品手记             | 2017-11-16 | 邱岳             |      |
|  5 |  62 | 人工智能基础课             | 2017-12-01 | 王天一           | 是   |
|  6 |  63 | 赵成的运维体系管理课        | 2017-12-13 | 赵成             |      |
|  7 |  74 | 推荐系统三十六式           | 2018-02-23 | 刑无刀           |      |
|  8 |  76 | 深入浅出区块链             | 2018-03-19 | 陈浩             | 是   |


#查看视频列表
$ geektime-dl video
+----+-----+------------------------------------------+------------+--------------+------+
| #  | ID  |                   名称                   |    时间    |     作者     | 购买 |
+----+-----+------------------------------------------+------------+--------------+------+
|  0 |  66 | 微服务架构核心20讲                         | 2018-01-08 | 杨波         | 是   |
|  1 |  77 | 9小时搞定微信小程序开发                     | 2018-03-22 | 高磊         |      |
|  2 |  84 | 微服务架构实战160讲                        | 2018-05-03 | 杨波         | 是   |
|  3 |  98 | 零基础学Python                            | 2018-05-25 | 尹会生       |      |

可恢复继续下载

Ctrl+C 中断下载。

存在 .download 临时文件,使用相同的参数执行 geektime-dl 命令,则下载进度将从上一个会话恢复。

登录

通过账号密码登录:

$ geektime-dl login --phone xxxxxx --password xxxxxx
极客时间账号登录成功: XXX

通过Cookie登录:

$ geektime-dl login --gcid xxxxxx --gcess xxxxxx --serverId 'xxxxxxx'
极客时间账号登录成功: XXX

参考仓库

License

MIT

Copyright (c) 2020-present, mmzou

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author