1. 站點(diǎn)選取
現(xiàn)在的大網(wǎng)站基本除了pc端都會(huì)有移動(dòng)端,所以需要先確定爬哪個(gè)。
比如爬新浪微博,有以下幾個(gè)選擇:
www.weibo.com,主站
www.weibo.cn,簡(jiǎn)化版
m.weibo.cn,移動(dòng)版
上面三個(gè)中,主站的微博數(shù)據(jù)是動(dòng)態(tài)加載的,意味著光看源碼是看不到數(shù)據(jù)的,想爬的話要么搞清楚其api訪問(wèn)情況,要么模擬js,那樣的話花的力氣可能就有點(diǎn)多了。weibo.cn是一個(gè)簡(jiǎn)化版,數(shù)據(jù)能直接從網(wǎng)頁(yè)源代碼中解析出來(lái),但使用正則或xpath取網(wǎng)頁(yè)中的元素仍然是無(wú)聊且費(fèi)時(shí)的,更不用說(shuō)偶爾的頁(yè)面結(jié)構(gòu)錯(cuò)誤更讓人抓狂。 相比之下,移動(dòng)版的爬蟲(chóng)最好寫(xiě),因?yàn)橐苿?dòng)版能直接拿到j(luò)son格式的數(shù)據(jù)。
一般來(lái)說(shuō),有移動(dòng)版的網(wǎng)站優(yōu)先爬移動(dòng)版,會(huì)節(jié)省很多力氣。
2. 模擬登錄
現(xiàn)在需要登錄才能正常瀏覽的網(wǎng)站的越來(lái)越多了,對(duì)爬蟲(chóng)也越來(lái)越不友好...所以模擬登錄在不少場(chǎng)合都是必不可少的。
首先,最簡(jiǎn)單的模擬登錄是只有用戶名密碼的登錄。這時(shí)候只需要在發(fā)