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就不必非得在浏览器中运行了,用武之地大增,比如下面的小爬虫,爬的是《纸牌屋》的高清下载链接:

// 首先安装两个库,在当前工程目录用下面的命令行命令:
// 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】

时间: 2024-08-08 09:24:16

Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV的相关文章

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

本人比較喜欢看美剧.尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接.并依照先后顺序写入到文本文件,供下载工具进行批量下载.比方用迅雷.先打开迅雷,然后复制全部下载链接到剪切板,迅雷会监视剪切板来新建全部任务.假设迅雷没有自己主动监视,能够自己点击新建然后粘贴链接.Python源码例如以下.用的是Python3 : # python3 实现,以下的实例 3 部美剧爬完大概要 10 s import

python 批量下载美剧 from 人人影视 HR-HDTV

本人比较喜欢看美剧,尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的所有 HR-HDTV 的 ed2k下载链接,并按照先后顺序写入到文本文件,供下载工具进行批量下载.源代码如下: # python3 实现,下面的实例 3 部美剧爬完大概要 20 s import urllib.request import re def get_links(url, name='yyets'): data = urllib.request.urlopen(

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

这个与前作的差别在于地址的不规律性,需要找到下一页的地址再爬过去找. //====================================================== // abaike图片批量下载Node.js爬虫1.00 // 2017年11月9日 //====================================================== // 内置http模块 var http=require("http"); // 内置文件处理模块,用于创

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

即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaotu图片批量下载Node.js爬虫1.00 // 2017年11月14日 //====================================================== // 内置http模块 var https=require("https"); // 内置文件处理模块,

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

第一次学习Node.js爬虫,所以这时一个简单的爬虫,Node.js的好处就是可以并发的执行 这个爬虫主要就是获取慕课网的课程信息,并把获得的信息存储到一个文件中,其中要用到cheerio库,它可以让我们方便的操作HTML,就像是用jQ一样 开始前,记得 npm install cheerio 为了能够并发的进行爬取,用到了Promise对象 //接受一个url爬取整个网页,返回一个Promise对象 function getPageAsync(url){ return new Promise(

Python爬虫爬取美剧网站

一直有爱看美剧的习惯,一方面锻炼一下英语听力,一方面打发一下时间.之前是能在视频网站上面在线看的,可是自从广电总局的限制令之后,进口的美剧英剧等貌似就不在像以前一样同步更新了.但是,作为一个宅diao的我又怎甘心没剧追呢,所以网上随便查了一下就找到一个能用迅雷下载的美剧下载网站[天天美剧],各种资源随便下载,最近迷上的BBC的高清纪录片,大自然美得不要不要的. 虽说找到了资源网站可以下载了,但是每次都要打开浏览器,输入网址,找到该美剧,然后点击链接才能下载.时间长了就觉得过程好繁琐,而且有时候网

Node.js 爬虫初探

前言 在学习慕课网视频和Cnode新手入门接触到爬虫,说是爬虫初探,其实并没有用到爬虫相关第三方类库,主要用了node.js基础模块http.网页分析工具cherrio. 使用http直接获取url路径对应网页资源,然后使用cherrio分析. 这里我主要是把慕课网教学视频提供的案例自己敲了一边,加深理解.在coding的过程中,我第一次把jq获取后的对象直接用forEach遍历,直接报错,是因为jq没有对应的这个方法,只有js数组可以调用. 知识点 ①:superagent抓去网页工具.我暂时

Node.js 爬虫,自动化抓取文章标题和正文

持续进行中... 目标: 动态User-Agent模拟浏览器 √ 支持Proxy设置,避免被服务器端拒绝 √ 支持多核模式,发挥多核CPU性能 √ 支持核内并发模式 √ 自动解码非英文站点,避免乱码出现 √ 自动队列管理,持续化PUSH √ 自动抓取文章标题和正文 √ 性能优化 测试用例,自动化测试 我的测试环境: 9 台安装 ElasticSearch 1.3.2 的 centos,48G内存,8核 3 台 Node.js v0.11.14 的 centos,16G内存,8核,用作爬虫 3 台

node.js爬虫杭州房产销售及数据可视化

现在年轻人到25岁+,总的要考虑买房结婚的问题,2016年的一波房价大涨,小伙伴们纷纷表示再也买不起上海的房产了,博主也得考虑考虑未来的发展了,思考了很久,决定去杭州工作.买房.定居.生活,之前去过很多次杭州,很喜欢这个城市,于是例行每天晚上都要花一点时间关注杭州的房产销售情况,以及价格,起初我每天都在杭州的本地论坛,透明售房网上查看,每一天的房产销售数据,但是无奈博主不是杭州本地人,看了网页上展示的很多楼盘,但是我不知道都在什么地方啊,于是乎,看到价格合适的,总是到高德地图去搜索地理位置,每次