《網路爬蟲:從入門到實踐》一書勘誤
本書由於是第一版,因此還存在一些差錯,希望各位讀者諒解。
另外,感謝各位讀者的指正,現將本書的錯誤之處一併放在此處,方便其他讀者更好閱讀和使用此書。也歡迎大家在知乎私信或者留言給我,我會持續更新此文。
現在貼一下《網路爬蟲:從入門到實踐》讀者群,歡迎讀者們加入討論。請點擊鏈接《網路爬蟲:從入門到實踐》一書勘誤 - 數據科學@唐松Santos,掃描裡面的二維碼。
本書代碼的源代碼均可在 github下載: https://github.com/Santostang/PythonScraping
一些讀者反映github 無法訪問,此處貼出百度雲地址:https://pan.baidu.com/s/1nuCZbPf 密碼請參照本文最末。
- Anaconda 的安裝(第二章 2.1.1;第9頁):有讀者反映Anaconda 鏈接無法訪問,或者下載超過了幾個小時。這是因為國內訪問境外網站的限速問題。這裡推薦使用清華大學的鏡像: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/。請選擇 Anaconda3下載,最新版本:Anaconda3-5.0.0-Windows-x86.exe 416M 2017-09-26 17:34; Anaconda3-5.0.0-MacOSX-x86_64.pkg 567M 2017-09-26 17:31
- 編輯器 (第二章,第11頁):應該是編輯器,而非編譯器
- obj1.detail(obj1) (第二章2.2.5,第18頁):obj1.detail(obj1) 為上一行的接著的注釋,意在解釋 Python 類的傳遞,並不是代碼。正確的代碼是:
class Person: # 創建類n def __init__(self, name, age): #__init__()方法稱為類的構造方法n self.name = namen self.age = agen n def detail(self): #通過self調用被封裝的內容n print (self.name)n print (self.age)nnobj1 = Person(santos, 18)nobj1.detail() # Python將obj1傳給self參數,即:obj1.detail(obj1),此時內部self=obj1n
4. def _init_(): (第二章2.2.5;第18/19頁):def _init_():應為 def __init__(): 單下劃線改為雙下劃線
class Person: # 創建類n def __init__(self, name, age): #__init__()方法稱為類的構造方法n self.name = namen self.age = agen nobj1 = Person(santos, 18) #將"santos"和 18 分別封裝到 obj1 及 self的 name和age屬性n
5. soup.find("h1",class_="post-tilte") (第二章2.3.2 第23頁):印刷時的 class 後的下劃線沒印出來,請讀者注意,使用 BeautifulSoup 的 find 或 find_all的 class 後均有下劃線。
6. a=I*0.1 (第二章章末實戰 第28和29頁):0.01應為0.1。另外29頁 elif I<=60 and I>100 應為 elif I<=100 and I>60。
7. print (movie_list) (第二章3.4.2 第39頁):print (movie_list)應為 print (movies)
8. 第四章:代碼已無法使用,因為網易雲跟帖停止服務,現在已經在博客中更新了新寫的第四章。請參照博客文章:Hello world! - 數據科學@唐松Santos
9. 第四章章末實戰(第55頁)。Airbnb網站已經改了代碼,所以以前的爬蟲代碼用不了了。代碼已經更新在 github和百度網盤。
10. caps["marionette"] = True (4.3.2,第48頁),caps["marionette"] = False 這裡應該改成caps["marionette"] = True
11. 反斜杠「」(第5章5.1.1 第63頁),假如你需要匹配文本中的字元"",使用編程語言表示的正則表達式里就需要 4 個反斜杠"":前兩個反斜杠""和後兩個反斜杠""各自在編程語言里轉義成一 個反斜杠"",所以 4 個反斜杠""就轉義成了兩個反斜"",這兩個反斜杠""最 終在正則表達式里轉義成一個反斜杠""。
12. 第六章章末實戰(6.5 第103頁)。虎撲網站已經改了代碼,所以以前的爬蟲代碼用不了了。代碼已經更新在 github和百度網盤。虎撲的代碼也很簡單,大家可以自己嘗試自己寫代碼爬蟲。
本書更好的使用:
- 我連 HTML 都不懂,如何自學 HTML?請進入HTML 教程 學習,時間大概2-5小時。
雲密碼:jhpi
推薦閱讀:
※為什麼網上Python爬蟲教程這麼多,但是做爬蟲的這麼少呢?爬蟲發展又該是如何呢?
※簡單爬蟲的通用步驟
※跟繁瑣的命令行說拜拜!Gerapy分散式爬蟲管理框架來襲!
※156個Python網路爬蟲資源,媽媽再也不用擔心你找不到資源!
※Python3爬蟲(3)單網頁簡單爬取文字信息