網路爬蟲(一)

2021-09-28 17:22:53 字數 1802 閱讀 6325

public

class

spiderdemo

}}

爬蟲訪問的流程和此我們手動訪問瀏覽器的流程類似

有時,我們需要對請求增加一些配置,例如對get請求的配置

requestconfig config = requestconfig.

custom()

// 建立連線的時間

.setconnecttimeout

(1000

)// 獲取連線的時間

.setconnectionrequesttimeout

(500

)// 資料傳輸的時間

其中配置了3個字段,建立連線的時間、獲取連線的時間、資料傳輸的時間。

public

static

void

main

(string[

] args)

throws exception

}catch

(exception e)

finally

}

來看一下這步

我們可以把多個get請求的引數設定到uribuilder中,就是通過setparameter方法

public

class

postparam

}catch

(exception e)

finally

}}

為什麼namevaluepair中放入了乙個物件呢,因為namevaluepair是乙個介面,可以看到

要想在add進去鍵值對,就需要建立乙個namevaluepair的實體類,看一下實現了這個介面的實現類

而且該實現類的構造器傳入的是乙個name和string,所以我們可以把要請求的引數可以直接放在這個集合中

為什麼使用連線池,學過jdbc的可能知道,頻繁的建立連線和銷毀連線會帶來效能上的影響,瀏覽器客戶端也一樣,頻繁的開關瀏覽器進行訪問也是會帶來效能上的影響的,所以我們使用httpclient的連線池,每次用的時候直接從池裡拿,用完之後歸還到池中

// closeablehttpclient 使用完後千萬不要關閉,千萬不要關閉,千萬不要關閉,執行完後會自動歸還到 連線池

}}所以就要限制訪問每個主機的最大連線數,使其資源分配均勻

網路爬蟲一

乙個通用的網路爬蟲的框架如圖所示 網路爬蟲的基本工作流程如下 在爬蟲系統中,待抓取url佇列是很重要的一部分。待抓取url佇列中的url以什麼樣的順序排列也是乙個很重要的問題,因為這涉及到先抓取那個頁面,後抓取哪個頁面。而決定這些url排列順序的方法,叫做抓取策略。下面重點介紹幾種常見的抓取策略 1...

一 初見網路爬蟲

如何不通過瀏覽器的幫助來格式化和處理資料 本章任務 首先向網路伺服器傳送get請求以獲取具體網頁,再從網頁讀取html內容,最後做一些簡單的資訊提取,將我們要找的內容分離出來。一 網路連線 1 網際網路實現過程 待補充 1.3 python是如何實現的 from urllib.request imp...

python網路爬蟲一

正規表示式詳細介紹 import urllib2 import random 瀏覽器資訊 mozilla 5.0 windows u windows nt 6.1 en gb rv 1.9.1.17 gecko 20110123 like firefox 3.x seamonkey 2.0.12 m...