標籤:var 請求 bsp download cad load log 原型 url
這兩天發現了一個叫看知乎的網站。是知乎的蘇莉安做的,當中爬蟲使用的 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 cheeriovar request = require("request"); // request是用來請求資料var cheerio = require("cheerio"); // cherrio是用jquery的文法來解析htmlvar 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