1.註冊中國大學MOOCpython
2.選擇北京理工大學嵩天老師的《Python網絡爬蟲與信息提取》MOOC課程正則表達式
3.學習完成第0周至第4周的課程內容,並完成各周做業網絡
4.提供圖片或網站顯示的學習進度,證實學習的過程。架構
5.寫一篇很多於1000字的學習筆記,談一下學習的體會和收穫。併發
學習筆記:框架
大三剛接觸到python這門課的時候,對於網絡爬蟲瞭解算是止於皮毛,只明白了爬蟲是一種按照必定的規則,能夠自動地抓取萬維網信息的程序或者腳本,被普遍用於互聯網搜索引擎,能夠自動採集全部其可以訪問到的頁面內容,以獲取或更新這些網站的內容和檢索方式。此次經過鄂大偉老師的推薦,學習了《Python網絡爬蟲與信息提取》這門網絡課程,讓我體會到了python第三方庫的強大,也讓我對網絡爬蟲有了更深的認識。函數
這門課程介紹Python計算生態中最優秀的網絡數據爬取和解析技術,具體講授構建網絡爬蟲功能的兩條重要技術路線:requests-bs4-re和Scrapy,課程內容是進入大數據處理、數據挖掘、以數據爲中心人工智能領域的必備實踐基礎。教學內容包括:Python第三方庫Requests,講解經過HTTP/HTTPS協議自動從互聯網獲取數據並向其提交請求的方法;Python第三方庫Beautiful Soup,講解從所爬取HTML頁面中解析完整Web信息的方法;Python標準庫Re,講解從所爬取HTML頁面中提取關鍵信息的方法;python第三方庫Scrapy,介紹經過網絡爬蟲框架構造專業網絡爬蟲的基本方法。性能
在網絡爬蟲之提取中,Beautiful Soup庫是解析、遍歷、維護「標籤樹」的功能庫,bs4提供了5種基本元素和3種遍歷功能。標記後的信息可造成信息組織結構,增長信息維度,可用於用於通訊、存儲,更利於程序的理解和運用。信息標記有XML、JSON、YAML三種形式,。介紹了信息提取的通常方法:1.完整解析信息的標記形式,在提取關鍵信息。2.無視標記形式,直接搜索關鍵信息。融合方法:結合形式解析與搜索方法,提取關鍵信息。在網絡爬蟲之實戰中,學習了正則表達式,是用來簡潔表達一組字符串的表達式。認識了正則表達式的經常使用操做符。Re庫是python的標準庫,主要用於字符串匹配。Re庫的函數調用有兩種方式,一種是直接加上方法名調用,還有一種是先將函數編譯成正則表達式對象,再用正則表達式對象調用函數。Re庫的Match對象,是一次匹配的結果,包含匹配的不少信息。在網絡爬蟲之框架中,認識到爬蟲框架是實現爬蟲功能的一個軟件結構和功能組件集合,爬蟲框架是一個半成品,可以幫助用戶實現專業文理爬蟲,包括了「5+2」結構。學習到了Scrapy命令行的使用。Scrapy與requests比較,Scrapy是網站級爬蟲,併發性好,性能較高,重點在於爬蟲結構,但入門稍難。學習
嵩天老師的教學方法是先給學生講授概念性的知識,再經過實戰演練讓咱們加深記憶。讓我留下深入印象的是學習正則表達式的時候,由於須要記憶知識點有點多,因此我碰見了一些問題。正則表達式語法由字符和操做符組成,我本身寫了一些例子,在開始的時候屢次碰到關於「/」與「\」寫錯了的事情,這一方面是本身鍵盤使用習慣問題,一方面也是本身對這兩個符號的理解不夠透徹。通過摸索學習我總結了如下內容:「/」是分隔符號,/通常用於正則表達的開始和結束,「\」用於在中途使用,起轉義做用;而且若是一個「\」後出現一個字符,而且不是能夠轉義的字符,那麼「\」及其後面的字符不會被轉義。大數據