公司網(wǎng)站制作爬蟲“黑洞”
日期 : 2020-10-21 18:38:35
爬蟲“黑洞”。爬蟲在搜集藏文網(wǎng)頁(yè)的過程中, 必須考慮可能出現(xiàn)的“黑洞”情況。
爬蟲黑洞是指, 在抓取一張網(wǎng)頁(yè)的鏈接時(shí), 鏈接本身是一個(gè)無限循環(huán), 導(dǎo)致爬蟲抓取時(shí)跟著循環(huán), 浪費(fèi)資源。有時(shí)一些URL看起來不同, 但實(shí)際指向同一張網(wǎng)頁(yè), 也會(huì)使爬蟲陷入重復(fù)抓取的境地。
為了避免爬蟲誤入黑洞, 一般采取兩種策略。一是爬蟲回避動(dòng)態(tài)網(wǎng)頁(yè), 因?yàn)閯?dòng)態(tài)網(wǎng)頁(yè)常常會(huì)把爬蟲帶入黑洞。識(shí)別動(dòng)態(tài)網(wǎng)頁(yè)時(shí), 只需要判斷URL中是否出現(xiàn)問題, 含問號(hào)的就是動(dòng)態(tài)網(wǎng)頁(yè)。二是使用Visited表記錄已經(jīng)訪問過的URL, 凡是遇到新的URL存在于Visited表, 就放棄對(duì)該URL的繼續(xù)處理。例如:當(dāng)遇到a→b→c→d→c→e這樣的環(huán)路鏈接, 爬蟲就會(huì)掉進(jìn)去, 反復(fù)抓取c、d對(duì)應(yīng)的頁(yè)面。使用Visited表, 就能避免這個(gè)問題。
爬蟲黑洞是指, 在抓取一張網(wǎng)頁(yè)的鏈接時(shí), 鏈接本身是一個(gè)無限循環(huán), 導(dǎo)致爬蟲抓取時(shí)跟著循環(huán), 浪費(fèi)資源。有時(shí)一些URL看起來不同, 但實(shí)際指向同一張網(wǎng)頁(yè), 也會(huì)使爬蟲陷入重復(fù)抓取的境地。
為了避免爬蟲誤入黑洞, 一般采取兩種策略。一是爬蟲回避動(dòng)態(tài)網(wǎng)頁(yè), 因?yàn)閯?dòng)態(tài)網(wǎng)頁(yè)常常會(huì)把爬蟲帶入黑洞。識(shí)別動(dòng)態(tài)網(wǎng)頁(yè)時(shí), 只需要判斷URL中是否出現(xiàn)問題, 含問號(hào)的就是動(dòng)態(tài)網(wǎng)頁(yè)。二是使用Visited表記錄已經(jīng)訪問過的URL, 凡是遇到新的URL存在于Visited表, 就放棄對(duì)該URL的繼續(xù)處理。例如:當(dāng)遇到a→b→c→d→c→e這樣的環(huán)路鏈接, 爬蟲就會(huì)掉進(jìn)去, 反復(fù)抓取c、d對(duì)應(yīng)的頁(yè)面。使用Visited表, 就能避免這個(gè)問題。