这两天发现了一个叫看知乎的站点。是知乎的苏莉安做的,当中爬虫使用的 Node.js。这里就针对上一篇博客中的美剧小爬虫,改用
nodejs 进行实现一下。体验一下强大的 Node.js。

假设之前没实用过 JavaScript,最好还是到 http://www.codecademy.com/  做一下 JavaScript 和 jQuery 的入门练习,高速熟悉一下基本的语法,有其它语言基础一天时间足够。

有基本的了解后。就会发现 JavaScript 的两大特点:

  • 使用基于原型(prototype)的方式来实现面向对象编程。
  • 函数式编程,对函数式有兴趣推荐 Racket(原PLT Scheme)。

Node.js 是基于Google 的V8 引擎的一个 JavaScript 执行时平台,能够非常方便的编写高速可扩展的网络应用程序。Node.js 採取事件驱动。非堵塞 I/O模型。这使其轻量级且高效。非常适合执行在分布式设备上的数据密集的实时应用。有了Node.js 这个执行时。JavaScript就不必非得在浏览器中执行了。用武之地大增,比方以下的小爬虫,爬的是《纸牌屋》的高清下载链接:

// 首先安装两个库,在当前project文件夹用以下的命令行命令:
// 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的更多相关文章

  1. Python 爬虫批量下载美剧 from 人人影视 HR-HDTV

    本人比較喜欢看美剧.尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接.并依照先后顺序写入到文本文件, ...

  2. Node.js aitaotu图片批量下载Node.js爬虫1.00版

    即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaot ...

  3. Node.js umei图片批量下载Node.js爬虫1.00

    这个爬虫在abaike爬虫的基础上改改图片路径和下一页路径就出来了,代码如下: //====================================================== // ...

  4. Node.js abaike图片批量下载Node.js爬虫1.01版

    //====================================================== // abaike图片批量下载Node.js爬虫1.01 // 1.01 修正了输出目 ...

  5. Node.js abaike图片批量下载Node.js爬虫1.00版

    这个与前作的差别在于地址的不规律性,需要找到下一页的地址再爬过去找. //====================================================== // abaik ...

  6. node.js爬虫

    这是一个简单的node.js爬虫项目,麻雀虽小五脏俱全. 本项目主要包含一下技术: 发送http抓取页面(http).分析页面(cheerio).中文乱码处理(bufferhelper).异步并发流程 ...

  7. Node.js爬虫-爬取慕课网课程信息

    第一次学习Node.js爬虫,所以这时一个简单的爬虫,Node.js的好处就是可以并发的执行 这个爬虫主要就是获取慕课网的课程信息,并把获得的信息存储到一个文件中,其中要用到cheerio库,它可以让 ...

  8. Node JS爬虫:爬取瀑布流网页高清图

    原文链接:Node JS爬虫:爬取瀑布流网页高清图 静态为主的网页往往用get方法就能获取页面所有内容.动态网页即异步请求数据的网页则需要用浏览器加载完成后再进行抓取.本文介绍了如何连续爬取瀑布流网页 ...

  9. Node.js 爬虫爬取电影信息

    Node.js 爬虫爬取电影信息 我的CSDN地址:https://blog.csdn.net/weixin_45580251/article/details/107669713 爬取的是1905电影 ...

随机推荐

  1. 6,id 小数据池,编码and解码。

    asscii :8位(数字,英文,特殊字符)表示一个字符. A:0000 0001 unicode :(万国码)初期:16位,两个字节,表示两个字符. A:0000 0001 0000 0001 中: ...

  2. luogu3629 [APIO2010]巡逻

    创造一个环出来,可以让环上的边都只访问一次. 对于 \(k=1\),答案就是树的直径两边连起来. 倘若 \(k=2\),那就先按照 \(k=1\) 的求一遍,然后我们发现,如果第二条加的边构成的环和第 ...

  3. 【转载】标准C语言的输入输出流(i/o)方法详解

    标准 C I/O clearerr 语法: #include <stdio.h> void clearerr( FILE *stream ); clearerr函数重置错误标记和给出的流的 ...

  4. x86保护模式 控制寄存器和系统地址寄存器

    控制寄存器和系统地址寄存器 控制寄存器    crx cr0   指示cpu工作方式的控制位  包含启用和禁止分页管理机制的控制位  包含控制浮点协处理器操作的控制位   注意必须为0的位 cr2和c ...

  5. Axure:从简单搜索到联想搜索的部件制作

    导读:最近一直都在整理原型部件,要说准备的最有感触的,当属搜索框无疑.搜索框的整理,前后加起来共耗时两天多.从最开始的按钮和文本框,到后来的图示,提示和联想查询.耗费了不少的心血,有必要总结一下,留个 ...

  6. HDU-4847 Wow! Such Doge!,模拟!

    Wow! Such Doge! 题意:给定的字符串中doge出现了多少次,直接模拟即可,不用KMP. char s[N]; int main() { // int n; int ans=0; whil ...

  7. HDU-1251 统计难题,字典树或者map!

    统计难题 很久就看过这个题了,但不会~~~不会~~ 题意:给出一张单词表,然后下面有若干查询,每次给出一个单词,问单词表中是否存在以这个单词为前缀的单词,输出数量.本身也是自身的前缀.只有一组数据! ...

  8. 使用Unity做2.5D游戏教程(一)

    最近在研究Unity 3D,看了老外Marin Todorov写的教程很详细,就翻译过来以便自己参考,翻译不好的地方请多包涵. 如果你不了解2.5D游戏是什么,它基本上是个3D游戏而你可以想象是压扁的 ...

  9. uva 10140 素数筛选(两次)

    #include<iostream> #include<cstring> #include<cmath> #include<cstdio> using ...

  10. UVa10491 Cows and Cars

    #include<iostream> #include<cstdio> #include<algorithm> int main(){ double a,b,c; ...