Nodejs爬蟲爬取黃色網(wǎng)站全站,且以base64加密將資源存進數(shù)據(jù)庫

talk is cheap,show you the code

'use strict';

const http = require('http');

const cheerio = require('cheerio');

const mysql = require('mysql');

//create dblink

const connection = mysql.createConnection({

host: '192.168.199.194',

user: 'root',

password: 'sjh',

port: '3306',

database: 'sjh'

});

// var url = 'http://www.runoob.com/nodejs/nodejs-tutorial.html';

var paths = ['/index.php?s=video/search/wd/%E9%BB%84%E7%89%87',

'/index.php?s=video/search/wd/26uuu',

'/index.php?s=video/search/wd/%E6%83%85%E8%89%B2%E7%BD%91%E5%9D%80'

];

var address = 'http://www.yn213.com';

var urls = [];//聲明空數(shù)組待命

for (var i = 0; i < paths.length; i++) {

var url = address+paths[i];//url拼接

urls.push(url);//遍歷的結(jié)果逐一push進數(shù)組

}

console.log(urls);,//驗證url拼接結(jié)果

connection.connect();

for (var i = 0; i < urls.length; i++) {

http.get(urls[i], function(res) {

var html = '';

res.on('data', function(data) {

html += data;

});

res.on('erro', function(erro) {

console.log('抓取失敗!' + erro.stack);

});

res.on('end', function() {

var htmlBuf = new Buffer(html);

var h = htmlBuf.toString('base64');,//加密

var sql = 'insert into html (result) values("' + h + '")';

connection.query(sql, function(err, result) {

if (err) {

console.log('[INSERT ERROR] - ', err.message);

} else {

console.log('success!');

? ? }

? });

});

});

}


Sql代碼:

創(chuàng)建一個表用于存放結(jié)果

create table result(reault longtext);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。