首页 > 代码库 > Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV
Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV
这两天发现了一个叫看知乎的网站,是知乎大牛苏莉安做的,其中爬虫使用的 Node.js。这里就针对上一篇博客中的美剧小爬虫,改用 nodejs 进行实现一下,体验一下强大的 Node.js。
如果之前没有用过 JavaScript,不妨到 http://www.codecademy.com/ 做一下 JavaScript 和 jQuery 的入门练习,快速熟悉一下基本语法,有其他语言基础一天时间足够。有基本的了解后,就会发现 JavaScript 的两大特点:
如果之前没有用过 JavaScript,不妨到 http://www.codecademy.com/ 做一下 JavaScript 和 jQuery 的入门练习,快速熟悉一下基本语法,有其他语言基础一天时间足够。有基本的了解后,就会发现 JavaScript 的两大特点:
- 使用基于原型(prototype)的方式来实现面向对象编程;
- 函数式编程,对函数式有兴趣推荐 Racket(原PLT Scheme);
Node.js 是基于Google 的V8 引擎的一个 JavaScript 运行时平台,可以很方便的编写快速可扩展的网络应用程序。Node.js 采取事件驱动,非阻塞 I/O 模型,这使其轻量级且高效,非常适合运行在分布式设备上的数据密集的实时应用。有了Node.js 这个运行时,JavaScript就不必非得在浏览器中运行了,用武之地大增,比如下面的小爬虫,爬的是《纸牌屋》的高清下载链接:
// 首先安装两个库,在当前工程目录用下面的命令行命令: // npm install request // npm install cheerio var request = require("request"); // request是用来请求数据 var cheerio = require("cheerio"); // cherrio是用jquery的语法来解析html var url = "http://www.yyets.com/resource/28793"; request(url, function(error, response, body) { if (!error && response.statusCode === 200) { var $ = cheerio.load(body); $('[type="ed2k"]').each(function() { var link = $(this).attr('href'); if (typeof(link) != 'undefined' && link.indexOf("1024") > -1) { console.log(link); } }); } }); // 将文件命名为 download.js (or whatever you like) // 打开命令行窗口执行(windows 下推荐用 powershell): // node download.js > link.txt // 通过重定向输出,将下载链接存储到 link.txt 这个文本文件中 // tip: 按住 【shift】 键,当前文件夹内空白处右键会有打开命令行选项 // tip: 推荐 sublime 编辑器,安装 js 格式化和 terminal 插件【地址:http://blog.csdn.net/thisinnocence/article/details/40404219】
Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。