这两天发现了一个叫看知乎的站点。是知乎的苏莉安做的,当中爬虫使用的 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. 为什么我打的jar包没有注解?

    本文来自网易云社区 作者:王飞 一.前言 一切问题的起源就是来自一个问题"为什么我打的jar包没有注解?",带着这个疑问查了一圈资料,原来问题主要是在没有将源码中的注释进行抽取打包 ...

  2. iphone数据库(sqlite3)的用法操作oc,xcode

    首先你在用之前要在项目中加入libsqlite3.dylib 1.定义模型 [cpp] #import <Foundation/Foundation.h>   #import " ...

  3. VIJOS 1889 天真的因数分解 ——莫比乌斯函数

    同理BZOJ2440 二分答案,不过这次变成了统计含有平方因子的个数 #include <cmath> #include <cstdio> #include <cstri ...

  4. 黑匣子_NOI导刊2010提高 (对顶堆)

    题目描述 Black Box是一种原始的数据库.它可以储存一个整数数组,还有一个特别的变量i.最开始的时候Black Box是空的.而i等于0.这个Black Box要处理一串命令. 命令只有两种: ...

  5. spring5响应式编程

    1.Spring5新特性    2.响应式编程响应式编程:非阻塞应用程序,借助异步和事件驱动还有少量的线程垂直伸缩,而非横向伸缩(分布式集群)当Http连接缓慢的时候,从数据库到Http数据响应中也会 ...

  6. es6 箭头函数 map、find

    var  value = arr.map(function (x) {return x * x}); const arr = [1,2,3,4]; const value = arr.map(x =& ...

  7. jmeter录制接口以及并发测试

    http://jingyan.baidu.com/article/15622f2475601dfdfdbea548.html

  8. 最长递增子序列(cogs 731)

    «问题描述:给定正整数序列x1,..., xn.(1)计算其最长递增子序列的长度s.(2)计算从给定的序列中最多可取出多少个长度为s的递增子序列.(3)如果允许在取出的序列中多次使用x1和xn,则从给 ...

  9. HDU5056 BoringCount--线性扫一遍

    11754936 2014-09-29 10:08:45 Accepted 5056 31MS 392K 1257 B G++ czy 好简单的思路,怎么就没想到呢..... Boring count ...

  10. 转载 gdb调试程序

    转载自csdn,作者haoel,链接http://blog.csdn.net/haoel/article/details/2879 用GDB调试程序 GDB概述———— GDB是GNU开源组织发布的一 ...