Scrapy實戰之抓取豆瓣圖書

引言

爲了能更方便地選擇自己喜歡的書籍,我自己寫了一個Scrapy項目用來抓取豆瓣上的書籍。抓取的內容包括書籍的書名、作者、書信息、1到5星的百分數、評分和評論數。通過獲取到的這些數據,我們可以做相應的分析。比如:我們可以抓取某一類書箱,看看哪本書的評論數最多或者評價分數最高。當然了,我指的這個是最簡單的處理了。複雜一點的你可以用Python或R來分析相應變量之間的關係,比如:是否評論數越多書的評分越高?

總之,有了這些數據之後你可以做任何你想要的數據分析,你可以盡情地發揮自己的想像力。

安裝Scrapy

如果你的操作系統是ubuntu : 請參考Ubuntu 安裝Scrapy

如果你的操作系統是Mac OS X : 請參考Mac 安裝Scrapy

如果你的操作系統是Windows:請參考Windows 安裝Scrapy

運行爬蟲

如果你已經安裝了Python和Scrapy,你可以運行一下我寫好的爬蟲了。具體步驟請參考:運行爬蟲

抓取到的數據部分截圖如下:

Scrapy實戰之抓取豆瓣圖書

爬蟲具體細節

工程的目錄結構請參考:douban

現在,我按照這個目錄結構說明各個文件的作用。

  • proxy_list.txt : 文件內容。這是我收集的一些代理IP地址。如果你在抓取網站的時候不想暴露自己的IP地址或者你自己的IP地址被網站封了而不能抓取網站了,那麼用這個列表中的地址來抓取網頁。
  • scrapy.cfg : 文件內容。第7行代碼的含義是指定你的設置文件。一般情況下你不用動這個文件。
  • settings.py : 文件內容。這個文件很重要,它包含了一些很重要的配置。你必須要明白這個文件中每個配置的含義,我在相應的代碼上面已經標有註釋了。
  • MyMiddlewares.py : 文件內容處理Request Header.對於一些網站來說,你不用加Request Header也可以抓取網頁,但是對於豆瓣來說,如果你不加,它會禁止你抓取的。

其它的文件也沒什麼可說明的了。如果你還有什麼不明白的地方,給我留言,我看到會立刻回覆你。

結尾

這只是一個剛開始的項目,我以後會把它更加完善。如果你有什麼樣的建議,請告訴我。如果你也對這個項目感興趣,我們也可以一起完善它,歡迎你的Pull Requests.

發佈了106 篇原創文章 · 獲贊 213 · 訪問量 59萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章