第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

關(guān)于node爬蟲的問(wèn)題

關(guān)于node爬蟲的問(wèn)題

眼眸繁星 2018-10-05 18:19:08
關(guān)于爬蟲的若干問(wèn)題最近想利用爬蟲去獲取較為大量的數(shù)據(jù),但是在爬的過(guò)程中遇到了若干問(wèn)題,所以來(lái)和各位大神討教一下,如能解答,感激不盡。1. 對(duì)于網(wǎng)頁(yè)鏈接數(shù)量較多的時(shí)候,用什么方式去爬能提升效率?我現(xiàn)在是將所有的子頁(yè)鏈接存到一個(gè)數(shù)組里面,在對(duì)數(shù)組鏈接map操作,然后去獲取每一頁(yè)的數(shù)據(jù)。但是我現(xiàn)在所爬到的子頁(yè)鏈接有上萬(wàn)個(gè),爬取這些鏈接需要很長(zhǎng)的時(shí)間,獲取鏈接之后的請(qǐng)求頁(yè)面獲取數(shù)據(jù)也要很久的時(shí)間。所以我想知道,有沒(méi)有更好的方式能夠提高爬蟲的效率的。2. 獲取數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)應(yīng)該怎么處理我在請(qǐng)求子頁(yè)面獲取數(shù)據(jù)之后,會(huì)將數(shù)據(jù)存儲(chǔ)到mongodb里面,但是事實(shí)證明,這種寫法讓我的爬蟲存儲(chǔ)效率低下,而且經(jīng)常出現(xiàn)堆棧溢出的情況。所以我想了解一下大神們獲取到數(shù)據(jù)之后是怎么存儲(chǔ)數(shù)據(jù)的,我聽(tīng)過(guò)讀寫分離,但是不知道這具體是怎樣的一個(gè)概念,有大神講解下么~3. 對(duì)于爬到錯(cuò)誤數(shù)據(jù)的處理有些時(shí)候,所爬到頁(yè)面的數(shù)據(jù),是不符合存儲(chǔ)標(biāo)準(zhǔn)的,但是我不知道這部分的數(shù)據(jù)是應(yīng)該放過(guò),還是重新請(qǐng)求頁(yè)面重新獲取一次。我現(xiàn)在是如果請(qǐng)求到的數(shù)據(jù)不合格,就會(huì)換個(gè)ip重新請(qǐng)求頁(yè)面,知道數(shù)據(jù)符合為止。但是這樣很有可能造成死循環(huán),所以想知道大神們對(duì)這種狀況的處理方式。4. 用mongo存儲(chǔ)數(shù)據(jù)的問(wèn)題從昨晚到今天,總共有將近7w個(gè)子鏈接,但是我的mongodb里只多了5k條數(shù)據(jù)。所以我想了解一下,關(guān)于mongodb,有沒(méi)有什么可參考數(shù)據(jù)之類的,可以讓我了解一下它的真實(shí)性能。順便如果有大神肯分享一些mongo使用技巧和心得的話,那就更感謝了。。。小菜鳥新入門,如果有犯低級(jí)錯(cuò)誤的地方,歡迎各位大神指正。
查看完整描述

2 回答

?
泛舟湖上清波郎朗

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊

  1. 對(duì)于網(wǎng)頁(yè)鏈接數(shù)量較多的時(shí)候,用什么方式去爬能提升效率?

沒(méi)有辦法,網(wǎng)絡(luò)和帶寬限制

  1. 獲取數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)應(yīng)該怎么處理

正常使用非內(nèi)存型數(shù)據(jù)庫(kù)存放即可,如上面答主所說(shuō),瓶頸不會(huì)在數(shù)據(jù)庫(kù)。因?yàn)榫W(wǎng)絡(luò)和帶寬限制,寫入量極其小。猜測(cè)你所說(shuō)的堆棧溢出問(wèn)題是因?yàn)楸闅v全表使用callback導(dǎo)致。對(duì)mongodb不熟,建議使用mysql

  1. 對(duì)于爬到錯(cuò)誤數(shù)據(jù)的處理

如你所說(shuō),你應(yīng)該分析并創(chuàng)建相應(yīng)的處理規(guī)則。符合規(guī)則的進(jìn)行重試,比如有些網(wǎng)頁(yè)頻繁請(qǐng)求會(huì)限制ip等等,這些需要你重新請(qǐng)求,但是要設(shè)定次數(shù),比如重試兩次。。除此之外所有異常,比如404等等,不去理會(huì),繼續(xù)下一個(gè)任務(wù)

  1. 用mongodb存儲(chǔ)數(shù)據(jù)的問(wèn)題

還是上面的結(jié)果,一個(gè)爬蟲遠(yuǎn)遠(yuǎn)達(dá)不到數(shù)據(jù)庫(kù)的性能上限。你只需要關(guān)注你寫的程序,有沒(méi)有遍歷全表的操作即可。

曾經(jīng)用mysql存了130G的MD5數(shù)據(jù),大概10億條,查詢響應(yīng)還是和普通的查詢差不多。由此可見(jiàn),只要是正確的查詢姿勢(shì),沒(méi)有復(fù)雜的聯(lián)合查詢,一般不會(huì)觸及到性能上限


查看完整回答
反對(duì) 回復(fù) 2018-10-14
  • 2 回答
  • 0 關(guān)注
  • 994 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)