引言
爲了能更方便地選擇自己喜歡的書籍,我自己寫了一個Scrapy項目用來抓取豆瓣上的書籍。抓取的內容包括書籍的書名、作者、書信息、1到5星的百分數、評分和評論數。通過獲取到的這些數據,我們可以做相應的分析。比如:我們可以抓取某一類書箱,看看哪本書的評論數最多或者評價分數最高。當然了,我指的這個是最簡單的處理了。複雜一點的你可以用Python或R來分析相應變量之間的關係,比如:是否評論數越多書的評分越高?
總之,有了這些數據之後你可以做任何你想要的數據分析,你可以盡情地發揮自己的想像力。
安裝Scrapy
如果你的操作系統是ubuntu : 請參考Ubuntu 安裝Scrapy
如果你的操作系統是Mac OS X : 請參考Mac 安裝Scrapy
如果你的操作系統是Windows:請參考Windows 安裝Scrapy
運行爬蟲
如果你已經安裝了Python和Scrapy,你可以運行一下我寫好的爬蟲了。具體步驟請參考:運行爬蟲
抓取到的數據部分截圖如下:
爬蟲具體細節
工程的目錄結構請參考:douban
現在,我按照這個目錄結構說明各個文件的作用。
- proxy_list.txt : 文件內容。這是我收集的一些代理IP地址。如果你在抓取網站的時候不想暴露自己的IP地址或者你自己的IP地址被網站封了而不能抓取網站了,那麼用這個列表中的地址來抓取網頁。
- scrapy.cfg : 文件內容。第7行代碼的含義是指定你的設置文件。一般情況下你不用動這個文件。
- settings.py : 文件內容。這個文件很重要,它包含了一些很重要的配置。你必須要明白這個文件中每個配置的含義,我在相應的代碼上面已經標有註釋了。
- MyMiddlewares.py : 文件內容處理Request Header.對於一些網站來說,你不用加Request Header也可以抓取網頁,但是對於豆瓣來說,如果你不加,它會禁止你抓取的。
其它的文件也沒什麼可說明的了。如果你還有什麼不明白的地方,給我留言,我看到會立刻回覆你。
結尾
這只是一個剛開始的項目,我以後會把它更加完善。如果你有什麼樣的建議,請告訴我。如果你也對這個項目感興趣,我們也可以一起完善它,歡迎你的Pull Requests.