本文主要介紹 Web Scraping 的基本原理,基於Python語言,大白話,面向可愛的小白(\^ \^)。 易混淆的名稱: 很多時候,大家會把,在網上獲取Data的代碼,統稱為“爬蟲”, 但實際上,所謂的“爬蟲”,並不是特別準確,因為“爬蟲”也是分種的, 常見的“爬蟲”有兩種: 1. 網路爬蟲 ...
本文主要介紹 Web Scraping 的基本原理,基於Python語言,大白話,面向可愛的小白(^-^)。
易混淆的名稱:
很多時候,大家會把,在網上獲取Data的代碼,統稱為“爬蟲”,
但實際上,所謂的“爬蟲”,並不是特別準確,因為“爬蟲”也是分種的,
常見的“爬蟲”有兩種:
- 網路爬蟲 (Web Crawler),又稱 Spider;Spiderbot
- 網頁抓取 (Web Scraper),又稱 Web Harvesting;Web Data Extraction
而,這篇文章,主要講解的是第二種“爬蟲”(Web Scraper)的原理。
Web Scraping 是什麼?
簡單的說 Web Scraping,(在本文里)就是指,用Python代碼,從肉眼可見的網頁上,抓取數據。
為什麼需要 Web Scraping?
因為,重覆工作太多,自己做,可能會累死!
代碼的適用實例有哪些?
- 如,需要在證交所,下來50只不同股票的當前價格,
- 或者,想 print 出,新聞網站上,所有最新新聞的標題,
- 或者,只是想把網站上所有商品的價格列出來,放到 Excel 里對比下,
- 等等各種,盡可發揮你的想象力.....
Web Scraping 的基本原理:
-
首先,你需要瞭解,網頁是怎麼呈現在,我們屏幕上的;
- 其實就是,我們發出一個Request,
- 然後百公裡外的伺服器回給我們一個 Response;
- 然後我們收看到一大堆文字,
- 最後,瀏覽器,偷偷的把這堆文字排好了版,放在了我們屏幕上;
- 再詳細的原理,可以去看我之前博文里的書,HTTP下午茶 - 小白入門書
-
然後,我們要瞭解,使用Python,如何實現它,實現原理基本就四個步驟:
- 首先,代碼需要向伺服器發出一個Request,然後收到一個Response(html文件)
- 這裡可以,使用Python的,request庫,或者 urllib標準庫
- 然後,我們需要處理收到的這個Response,找到我們所需要的文字
- 這裡使用,BeautifulSoup4 來實現對 html 文件的解析
- 然後,需要設計代碼流程,來處理重覆任務
- 這裡使用,Loop什麼的,來完成重覆的流程
- 最後,導出我們得到的數據,最好是漂亮的Excel表格
- 這裡可以先使用,pandas,來完成一些數據處理,或者計算
- 然後使用,openpyxl庫來完成,寫入Excel的過程
- 首先,代碼需要向伺服器發出一個Request,然後收到一個Response(html文件)
篇尾總結:
這篇文章,重點在於講解實現的思路和過程,
所以,並非詳盡,也並沒有給出實際的代碼,
但是,這個思路,幾乎是網頁抓取的通用套路。
就寫到這裡吧,想起什麼再更新,
要是有寫的不到位的地方,還請包涵!