1. 程式人生 > >【python3】爬蟲學習日記(一)之概述

【python3】爬蟲學習日記(一)之概述

python3爬蟲學習日記(一)之概述

在學習了python3的基本語法知識後,小白要正式入門python啦,由於個人需要,所以從爬蟲入門。在學習中持續更新,如有不足,請指教。

爬蟲的定義及構成

  • 什麼是爬蟲? 網路爬蟲是一個自動提取網頁的程式,它為搜尋引擎從網上下載網頁,是搜尋引擎的重要組成。傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入佇列,直到滿足系統的一定停止條件。 聚焦爬蟲的工作流程較為複雜,需要根據一定的網頁分析演算法過濾與主題無關的連結,保留有用的連結並將其放入等待抓取的URL佇列。然後,它將根據一定的搜尋策略從佇列中選擇下一步要抓取的網頁URL,並重覆上述過程,直到達到系統的某一條件時停止。另外,所有被爬蟲抓取的網頁將會被系統存貯,進行一定的分析、過濾,並建立索引,以便之後的查詢和檢索;對於聚焦爬蟲來說,這一過程所得到的分析結果還可能對以後的抓取過程給出反饋和指導。

  • 爬蟲要解決的問題 (1) 對抓取目標的描述或定義 抓取目標的描述和定義是決定網頁分析演算法與URL搜尋策略如何制訂的基礎。現有聚焦爬蟲對抓取目標的描述可分為基於目標網頁特徵基於目標資料模式基於領域概念3種。基於目標網頁特徵的爬蟲所抓取、儲存並索引的物件一般為網站或網頁。python3中使用urllib.request模組來建立與網頁的連結。 (2) 對網頁或資料的分析與過濾 首先,需要學會分析網頁,如可以利用chrome的檢查來檢視html,分析元素,找出你想要抓取的部分;再者,如何過濾抓取過的資訊以及用第三方庫或正則表示式過濾資料;最後,對抓取到的資料進行儲存或分析,這裡可能要用到資料庫以及numpy,pandas

    等第三方庫。 (3) 對URL的搜尋策略 搜尋策略通常使用廣搜(BFS)或深搜(DFS)

  • 我們需要學習什麼知識? 1.網頁的基本知識,html語法以及網站的相關(POST\GET)概念 2.解析網頁用的Beautifulsoup模組/正則表示式 美麗湯官網文件 3.python3用來抓取的包:urllib.request 4.現成的框架:scrapy 5.處理動態頁面的包:selenium 6.分析處理資料的包(如匯出excel等等):numpy,pandas,openpyxl,xswl

Are you ready? Let’s learn!