node批量下載讀者文章
代码地址
需要在目录下创建名为 dz 的目录
安装依赖
```
安装 node npm
# npm install cheerio --sava-dev
# npm install request --sava-dev
```
const request= require('request');
const fs = require('fs');
const path = require('path');
const cheerio = require('cheerio');
const time = '2017_11'
const baseurl = 'http://www.52duzhe.com/'+time+'/';
const firsturl = baseurl + 'index.html';
function requestHtml(url) {
return new Promise((resolve, reject)=>{
request(url, function(err, res, body){
if(!err && res.statusCode == 200){
resolve(body);
}
})
})
}
function main() {
requestHtml(firsturl).then((res)=> {
const $ = cheerio.load(res);
const list = $('.booklist a');
list.each(function(a,item){
const newurl = baseurl+ $(item).attr('href');
requestHtml(newurl).then((data)=>{
let content = '';
const $ = cheerio.load(data);
let title = $('h1').text();
let writer = $('#pub_date').text();
let filename = path.join(__dirname, '/dz/'+title+'.txt');
content += `<<${title}>>\n\n`;
content += `${writer}\n\n`;
let text = $('.blkContainerSblkCon p');
text.each(function(a, b){
content += $(b).text();
})
fs.writeFile(filename, content, function(err){
if(err){
console.log(err);
}else{
console.log(filename+'创建成功');
}
})
})
})
})
}
main();
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦