国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

node.js - 關于Node爬蟲爬小說的問題

瀏覽:79日期:2024-07-16 18:02:09

問題描述

最近因為沒小說看,也無聊,就想著用Node來寫爬蟲爬書下來,弄了好幾天有些問題。爬小說異步的話章節不是順序排列的,所以用了sync-request進行同步操作,我爬的是筆趣閣這個網站上的書,現在由于剛學,只是做了爬單本書的。我發現在爬取的時候,會假死掉,停在那不動了,而且每次的章節數不同,我就加了個十秒的timeout超時,但是還是會出現這種假死的情況。后來百度了下,說網站是有防止爬蟲的東東的,具體我也不太清楚==,我就想,那我就加個間隔咯,我讓他每請求十次就休息20秒鐘,再重新爬。結果!!!還是會假死,233333。所以現在有點不明白為啥了,想求教一下,給點思路。拜托各位~~

下面是我請求的代碼,具體章節列表我在另一個js里面爬出來寫在json里面了,這邊是直接請求每個鏈接的了:

var http = require(’http’)var fs = require(’fs’)var cheerio = require(’cheerio’)var iconv = require(’iconv-lite’)var request = require(’sync-request’)var urlList = JSON.parse(fs.readFileSync(’list.json’, ’utf-8’))var header = JSON.parse(fs.readFileSync(’header.json’), ’utf-8’)//爬取每章節正文并存在txt中function getContent(list,title) { //用try catch進行錯誤捕獲,防止報錯跳出 try{ var res = request(’GET’,list.link,{ ’timeout’: 10000, ’retry’: true, ’retryDelay’: 10000 }) var html = iconv.decode(res.body, ’utf8’) var $ = cheerio.load(html,{ decodeEntities: false }) var ContentTitle = $(’.bookname h1’).text() var ContentText = $(’#content’).text().trim().replace(’readx();’, ’’).replace(/&nbsp;/g, ’’) fs.appendFileSync(title+'.txt', ContentTitle) fs.appendFileSync(title+'.txt', ContentText) console.log('爬取' + list.link + '成功') }catch(err) { console.log('爬取' + list.link + '出錯') }}//為了達到間隔的調用請求做了遞歸調用function getUrl(index) { for (let i = index;i < urlList.length;i++){ if (i>0 && i%10 == 0){ getContent(urlList[i],header.title) console.log('休息一下') setTimeout(() => {i++getUrl(i) },20000) return }else { console.log(i) getContent(urlList[i],header.title) } }}getUrl(0)

node.js - 關于Node爬蟲爬小說的問題

就和這個一樣,爬了一段時間就這樣了,就跟死機了似得,后面不管等多久都沒動靜,設置的超時啥的也沒有反應

問題解答

回答1:

這兩天一直在弄這個問題,起初是以為是sync-request的問題,后來換了別的還是一樣。我就猜可能是ip網站給屏蔽了還是什么的,后來中午吃飯和同事閑聊,順便就請教了下,他們也就是說大概就這個問題。既然如此,我就去弄了些免費的代理IP,然后在請求的時候,只要是請求超時或者報錯就立馬切換一個IP地址去請求。這樣下來,昨天特地爬了一個很大的小說,今天上班過來一看,全部爬下來了,沒有出現問題,哈哈。不過免費的代理IP很多都用不了,所以在這上面浪費了部分時間。現在要開始看看怎么爬多本書了,↖(^ω^)↗

相關文章:
主站蜘蛛池模板: 亚洲精品国精品久久99热 | 国产精品自在线天天看片 | 欧美成人影院 | 欧美一级久久 | 97成人精品视频在线播放 | 手机看片高清国产日韩片 | 91精品宅男在线观看 | 日韩国产成人精品视频 | 成人亚洲视频在线观看 | 日本久久综合 | 欧美一级大片免费看 | 色综合久久加勒比高清88 | 免费看孕妇毛片全部播放 | 久久99精品久久久久久秒播 | 美国黑人特大一级毛片 | 怡红院免费播放全部视频 | 成人亚洲天堂 | 日韩人成 | 国产精品无码久久综合网 | 丁香久久 | 久久影院yy6080 | 亚洲国产日韩欧美综合久久 | 女黄人东京手机福利视频 | 古代级a毛片在线 | 日韩精品一区二区在线观看 | 国产一级做a爰片久久毛片 国产一级做a爰片久久毛片99 | 亚洲男同可播放videos | 欧美一级毛片免费观看视频 | 精品一区二区三区视频在线观看免 | 日韩欧美毛片免费看播放 | 欧美—级v免费大片 | 欧美日韩精品一区三区 | 久久精品国产只有精品2020 | 免费观看女人一摸全是水 | 成人在线视频免费观看 | 国产在线观看免费人成小说 | 一机毛片 | 九九成人 | 特黄特色三级在线播放 | a毛片免费在线观看 | 成年人黄视频在线观看 |