1.註冊中國大學MOOChtml
2.選擇北京理工大學嵩天老師的《Python網絡爬蟲與信息提取》MOOC課html5
3.學習完成第0周至第4周的課程內容,並完成各周做業python
4.提供圖片或網站顯示的學習進度,證實學習的過程。web
5.寫一篇很多於1000字的學習筆記,談一下學習的體會和收穫。正則表達式
學習筆記:網絡
這門課程介紹Python計算生態中最優秀的網絡數據爬取和解析技術,具體講授構建網絡爬蟲功能的兩條重要技術路線:requests-bs4-re和Scrapy,課程內容是進入大數據處理、數據挖掘、以數據爲中心人工智能領域的必備實踐基礎。教學內容包括:Python第三方庫Requests,講解經過HTTP/HTTPS協議自動從互聯網獲取數據並向其提交請求的方法;Python第三方庫Beautiful Soup,講解從所爬取HTML頁面中解析完整Web信息的方法;Python標準庫Re,講解從所爬取HTML頁面中提取關鍵信息的方法;python第三方庫Scrapy,介紹經過網絡爬蟲框架構造專業網絡爬蟲的基本方法。架構
request庫的7個主要方法,分別是:1.requests.request():構造一個請求,支撐如下各方法的基礎方法;2.requests.get():獲取HTML網頁的主要方法,對應HTTP的GET;3.requests.head():獲取HTML網頁頭信息的方法,對應於HTTP的HEAD;4.requests.post():向HTML網頁提交POST請求的方法,對應於HTTP的POST;5.requests.put():向HTML網頁提交PUT請求的方法,對應於HTTP的PUT;6.requests.patch():向HTML網頁提交局部修改請求,對應於HTTP的PATCH;7.requests.delete():向HTML頁面提交刪除請求,對應於HTTP的DELETE。併發
Beautiful Soup庫,Beautiful Soup庫是解析、遍歷、維護「標籤樹的功能。它有四種解析器:bs4的HTML解析器、lxml的HTML解析器、lxml的XML解析器、html5lib的解析器。Beautiful Soup庫還有3種遍歷方式分別是:上行遍歷,下行遍歷和平行遍歷,經過這三種遍歷的方式咱們能夠來獲取各個節點的信息。信息提取的通常方法:1、完整解析信息的標記形式,再提取關鍵信息;2、無視標記形式,直接搜索關鍵信息;3、融合方法,結合形式解析與搜索方法,提取關鍵信息。框架
Re(正則表達式)是用來提取頁面的關鍵信息的,是用來簡潔表達一組字符串的表達式,正則表達式語法由字符和操做符構成和re庫主要功能函數。Re庫的函數式用法爲一次性操做,還有一種爲面向對象用法,可在編譯後屢次操做,經過compile生成的regex對象才能叫作正則表達式。正則表達式有兩種表達方式:一種是直接經過re.方法()調用;一種是經過regex=re.compile()將re的字符串編譯成regex對象,在經過對象.方法()來調用。機器學習
Scrapy爬蟲框架,Scrapy是網站級爬蟲,而且是一個框架,併發性好,性能較高,requests重點在頁面下載,而Scrapy重點在於爬蟲結構,通常定製靈活,深度定製困難。完整配置並實現Scrapy爬蟲的主要過程:1.創建工程和Spider模板;2.編寫Spider;3.編寫Pipeline:處理spider提取信息的後續的功能;4.配置優化:使得爬蟲運行的更好。並着重詳述了yield關鍵字的使用,使用yield能夠更節省存儲空間,響應更加迅速,使用更加靈活。
在開始學習這門慕課以前對網絡爬蟲瞭解並多,網絡爬蟲(又被稱爲網頁蜘蛛,網絡機器人,在FOAF社區中間,更常常的稱爲網頁追逐者),是一種按照必定的規則,自動地抓取萬維網信息的程序或者腳本。另一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。其實通俗的講就是經過程序去獲取web頁面上本身想要的數據,也就是自動抓取數據。80%爬蟲是基於Python開發的,學好爬蟲技能,可爲後續的大數據分析、挖掘、機器學習等提供重要的數據源。因此這門課程對從此的學習工做的幫助都是很大的。