1. 前言
前幾天折騰了很久之后,發(fā)現(xiàn)有很多結(jié)果出來不滿意,反正是我自己個(gè)人的項(xiàng)目,所以其實(shí)沒什么所謂。
但精益求精總是要的吧,反正在家閑著也是閑著。
2. 異步爬蟲改回同步爬蟲
因?yàn)榘l(fā)現(xiàn)渲染JS需要使用瀏覽器,而 Python 的 selenium 包無法作為異步同時(shí)處理,所以我還是把程序改回同步并且使用 Supervisor 來做多進(jìn)程。
詳情可看之前的,逆向做就是了。
廿壹-爬 URL 、Python 異步 、Supervisor 安裝配置等事宜
3. 人工清理數(shù)據(jù)
在前期做的頁面增加了頁面是刪除含某些關(guān)鍵字的樣本以及顯示數(shù)據(jù)庫規(guī)模的頁面。
其實(shí)主要是發(fā)現(xiàn)爬出來的數(shù)據(jù),很多都是不太像樣,有很多廣告,有很多不需要的信息,有很多重復(fù)捉取的信息。
前期項(xiàng)目:
廿肆-Django 建設(shè) WebApp 管理 MongoDB 數(shù)據(jù)庫內(nèi)容
4. MongoDB 隨機(jī)抽樣
剛做了很久測(cè)試,發(fā)現(xiàn)
aggregate([{'$match': dictFilter}, {'$sample': {'size': intLimit}}])
的確是隨機(jī)抽樣的,那就好。
5. 某社交網(wǎng)站爬蟲
網(wǎng)絡(luò)上應(yīng)該是有專門的爬蟲軟件的,但我覺得我可能需要自己練練手,所以我選擇某個(gè)有公開帖子的社交網(wǎng)站或論壇來爬。
其中可能比較重要的東西有兩樣:
- 針對(duì)網(wǎng)站的網(wǎng)頁信息
Tag 、 Class捉取,要針對(duì)網(wǎng)站定制化 - 針對(duì)鏈接的處理
- 針對(duì)用戶建立單都記錄并管理
- 是否有展開性的數(shù)據(jù)記錄(如用戶關(guān)系)
- 因?yàn)閿?shù)據(jù)均為較新的,所以不怕捉到舊的數(shù)據(jù)
這個(gè)可能需要先制定好框架,可以沿用前期已經(jīng)做好的泛用爬蟲做基礎(chǔ)。
6. 睡覺
就這樣先吧,做下去或不做下去也沒啥所謂的其實(shí)我覺得。