Giter Site home page Giter Site logo

imoocdownloader's Introduction

imoocDownloader

Build Status

由于慕课网现在的视频播放机制已经跟写项目时有所改变,所以部分视频会无法下载,该项目也不再维护

简介

imoocDownloader 用来爬取慕课网课程视频

安装

git clone https://github.com/webbought/imoocDownloader.git

cd imoocDownloader 

npm install

Usage

'use strict'

module.exports = {
    videoDir : './video',
    targets : [552,556,21,441,11]
}
配置好config文件,执行 node index.js即可。

指令模式

node index.js <command> <arguments>

Options:

-h, --help          output usage information
-V, --version       output the version number
-s, --search <n>    Search course specified by keywords
-l, --list <n>      Show the Chapters and Lessons by course Id
-d, --download <n>  Download the Course By course Id

example

node index.js --search mongodb

search

node index.js --list 578

list

node index.js --download 578

or

node index.js --download 75,578

download

课程目录

course

章节目录

chapter

视频目录

video

imoocdownloader's People

Contributors

bbbzhao avatar joriscai avatar jovey-zheng avatar t2krew avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

imoocdownloader's Issues

你抓这个视频不需要模拟登入么

我是用python在抓的,但有个登入问题卡住我了,他们在post密码的时候,对密码进行了加密,每次得到的那串加密字符串都不一样,所以卡住没有登入,不知你用node.js怎么解决的,还不需要处理登入问题。

亲测试是失败的

/var/data/imoocDownloader/index.js:2
process.on('uncaughtException', (err) => {
^
SyntaxError: Unexpected token >

centos7中报错

[root@localhost imoocDownloader]# node index.js --list 578
[root@localhost imoocDownloader]# node index.js --search mongodb
[root@localhost imoocDownloader]# cat log/error.log 
[2016-12-12 17:54:58.972] [ERROR] error - { Error: Cannot find module './lib/htmlParser'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/data/imoocDownloader/imooc.js:10:18)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3) code: 'MODULE_NOT_FOUND' }
[2016-12-12 17:55:23.265] [ERROR] error - { Error: Cannot find module './lib/htmlParser'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/data/imoocDownloader/imooc.js:10:18)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3) code: 'MODULE_NOT_FOUND' }
[2016-12-12 17:58:36.743] [ERROR] error - { Error: Cannot find module './lib/htmlParser'

我看是有这文件存在的。

解决了:

大小写问题,项目里的文件是小写的。

只能下载目录里的第一个视频

错误日志如下:
[2023-02-11 22:05:13.510] [ERROR] error - { Error: getaddrinfo ENOTFOUND v2.mukewang.com v2.mukewang.com:80
at errnoException (dns.js:50:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:92:26)
code: 'ENOTFOUND',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'v2.mukewang.com',
host: 'v2.mukewang.com',
port: 80 }

请问目前的爬虫还能用吗?

我现在在用爬虫下载时,老是一开始就很快,到了后面就下载很慢或者下载不了?是不是慕课网的策略调整?还是我的运行环境问题或线路问题?求大家测试一下,谢谢!

at TCP.onread (net.js:569:26) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }

下载的时候报错

错误日志

[2016-12-12 18:11:08.977] [ERROR] error - { Error: read ECONNRESET
    at exports._errnoException (util.js:1022:11)
    at TCP.onread (net.js:569:26) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }
[2016-12-12 18:13:38.267] [ERROR] error - { Error: read ECONNRESET
    at exports._errnoException (util.js:1022:11)
    at TCP.onread (net.js:569:26) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }

下载时候输出

[root@localhost imoocDownloader]# node index.js --download 763
>>>
正在下载课程 :  TypeScript入门
+ -- 第1章初识TypeScript
+ --- 1-1TypeScript-TypeScript介绍(01:41)
+ --- 1-2TypeScript-课程内容介绍(02:21)
+ -- 第2章TypeScript的优势
+ --- 2-1TypeScript-TypeScript的优势(02:37)
+ -- 第3章搭建TypeScript开发环境
+ --- 3-1TypeScript-在线compiler(02:00)
+ --- 3-2TypeScript-本地compiler(07:23)
+ -- 第4章字符串新特性
+ --- 4-1TypeScript-字符串新特性(08:17)
+ -- 第5章参数新特性
+ --- 5-1TypeScript-参数类型(06:06)
+ --- 5-2TypeScript-参数默认值(03:00)
+ --- 5-3TypeScript-可选参数(02:32)
+ -- 第6章函数新特性
+ --- 6-1TypeScript-RestandSpread操作符(05:02)
+ --- 6-2TypeScript-generator函数(07:30)
+ --- 6-3TypeScript-析构表达式(09:48)
+ -- 第7章表达式与循环
+ --- 7-1TypeScript-箭头表达式(07:39)
+ --- 7-2TypeScript-forof循环(07:16)
+ -- 第8章面向对象特性
+ --- 8-1TypeScript-类(15:07)
+ --- 8-2TypeScript-泛型(02:06)
+ --- 8-3TypeScript-接口(05:18)
+ --- 8-4TypeScript-模块(04:53)
+ --- 8-5TypeScript-注解(02:42)
+ --- 8-6TypeScript-类型定义文件(04:41)
+ -- 第9章课程总结
+ --- 9-1TypeScript-总结(00:52)
<<<
[root@localhost imoocDownloader]# 

没有正常下载,只打印出列表后就没有后续下载动作了。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.