Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV
这两天发现了一个叫看知乎的站点。是知乎的苏莉安做的,当中爬虫使用的 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的更多相关文章
- Python 爬虫批量下载美剧 from 人人影视 HR-HDTV
本人比較喜欢看美剧.尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接.并依照先后顺序写入到文本文件, ...
- Node.js aitaotu图片批量下载Node.js爬虫1.00版
即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaot ...
- Node.js umei图片批量下载Node.js爬虫1.00
这个爬虫在abaike爬虫的基础上改改图片路径和下一页路径就出来了,代码如下: //====================================================== // ...
- Node.js abaike图片批量下载Node.js爬虫1.01版
//====================================================== // abaike图片批量下载Node.js爬虫1.01 // 1.01 修正了输出目 ...
- Node.js abaike图片批量下载Node.js爬虫1.00版
这个与前作的差别在于地址的不规律性,需要找到下一页的地址再爬过去找. //====================================================== // abaik ...
- node.js爬虫
这是一个简单的node.js爬虫项目,麻雀虽小五脏俱全. 本项目主要包含一下技术: 发送http抓取页面(http).分析页面(cheerio).中文乱码处理(bufferhelper).异步并发流程 ...
- Node.js爬虫-爬取慕课网课程信息
第一次学习Node.js爬虫,所以这时一个简单的爬虫,Node.js的好处就是可以并发的执行 这个爬虫主要就是获取慕课网的课程信息,并把获得的信息存储到一个文件中,其中要用到cheerio库,它可以让 ...
- Node JS爬虫:爬取瀑布流网页高清图
原文链接:Node JS爬虫:爬取瀑布流网页高清图 静态为主的网页往往用get方法就能获取页面所有内容.动态网页即异步请求数据的网页则需要用浏览器加载完成后再进行抓取.本文介绍了如何连续爬取瀑布流网页 ...
- Node.js 爬虫爬取电影信息
Node.js 爬虫爬取电影信息 我的CSDN地址:https://blog.csdn.net/weixin_45580251/article/details/107669713 爬取的是1905电影 ...
随机推荐
- 图论trainning-part-1 E. Invitation Cards
E. Invitation Cards Time Limit: 8000ms Memory Limit: 262144KB 64-bit integer IO format: %lld Ja ...
- 卷积层feature map输出到文本
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/52166388 以VGG_16的网络为例 ...
- .NET重构(三):在注册和充值中,触发器的使用
导读:机房做到注册和充值了,有两个关键点:在注册的时候,同时给该用户写入充值记录:在充值的时候,给该用户更改余额信息.第一次做的时候,是一条一条的写,那时候师傅就说了触发器和存储过程的使用,现在终于用 ...
- Nginx+Php中限制站点目录防止跨站的配置方案记录
Nginx+Php中限制站点目录防止跨站的配置方案记录(使用open_basedir)-------------------方法1)在Nginx配置文件中加入: 1 fastcgi_param PH ...
- spring配置druid连接池和监控数据库访问性能
Druid连接池及监控在spring配置如下: <bean id="dataSource" class="com.alibaba.druid.pool.DruidD ...
- 【Luogu】P1306斐波那契公约数(递推)
题目链接 有个定理叫gcd(f(n),f(m))=f(gcd(n,m)) 所以递推就好了. #include<cstdio> #include<cstdlib> #includ ...
- Luogu【P1901】发射站(单调栈)
题目链接 题目说明比自己矮的塔收不到自己的能量,摆明了就是单调栈呗. 把比自己矮的全都从栈里弹出去,于是碰到第一个比自己高的.让他接受自己发射的能量. 当然由于发射站发射的能量有两个方向,所以正反两遍 ...
- BZOJ 3733 [Pa2013]Iloczyn 模拟爆搜
Description 给定正整数n和k,问能否将n分解为k个不同正整数的乘积 Input 第一行一个数T(T<=4000)表示测试组数 接下来T行每行两个数n(n<=10^9),k(k& ...
- Ubuntu 下使用 sshfs 挂载远程目录到本地
参考链接:http://blog.csdn.net/netwalk/article/details/12952719 一.Ubuntu 上安装sshfs Ubuntu源中已经包含了sshfs,以及所需 ...
- POJ 2279
线性DP 本题的正解是杨氏矩阵与钩子定理 但是这道题用DP的思想非常好 但是这样会MLE... #include <iostream> #include <cstdio> #i ...