###### tags: `web crawler`,`網路爬蟲`
# web crawler 基礎認識
* 網路爬蟲(英語:web crawler),也叫網路蜘蛛(spider),是一種用來自動瀏覽全球資訊網的網路機器人。
**網路爬蟲+資料分析的用途:**
* 週期性地取得競爭者的資料
* 建立比價資訊
* 蒐集與分析趨勢的走向(銀行匯率、股市......)
* 購物車分析
* 大數據的取得與應用
**爬蟲相關技術之HTTP通訊協定**
* 網路爬蟲的對象通常是資料來源的伺服器
* 爬蟲者向Web伺服器送出HTTP請求,對方接受後將所需的網頁傳送給爬蟲者

**工具的選擇**
* 靜態網頁:Requests+BeautifulSoup
* 動態網頁:Selenium+BeautifulSoup
* 整個網站:Scrapy
**步驟**
1. 使用HTTP通訊協定送出HTTP請求,取得網頁資料
2. 剖析HTML文件來定位擷取所需的網頁資料
3. 將取得的資料儲存成適當的資料形式

**網頁定位的方式**
* HTML的標籤名稱
* HTML的CSS選擇器的[class]屬性
* HTML的CSS選擇器的[id]屬性
* XPath表達式
* 正規表達式
* 動態網頁
**網頁定位所用的模組**
* BeautifulSoup的find過濾器
* 標籤名稱、id屬性、class屬性
* BeautifulSoup的select過濾器
* 標籤名稱、id屬性、class屬性
* re
* 正規表達式
* Selenium
* XPath
* 動態網頁
網頁定位的觀察方法
* 直接觀察HTML
* 使用瀏覽器的開發人員工具(F12)