[TOC]
# 爬蟲是什么
**爬蟲** 在網絡中全稱為**網絡爬蟲**,它可以是一個或一組`程序`/`腳本`, `爬蟲`運行后,可以從網絡中的非結構化數據頁面中提取并轉化為結構化數據。獲取到的結構化數據將用于后續的有價值的分析處理。
在**江湖**中 , 它的獨門絕技可以稱之為“**北冥神功**”, 吸取一切為我所用。只要內力深厚,天下一切皆為我吸收所用。
下圖是一個蜘蛛(spider), 我們的`爬蟲`就像它一樣沿著蜘蛛的網按照一定規則爬來爬去。
這個爬來爬去的規則就是**爬蟲規則**。
而爬來爬去獲取到的小蚊子就是**爬蟲目標數據**。

---
按照使用場景可分類為:**`通用爬蟲` 和 `專用爬蟲`**
## 通用爬蟲
我們常用的搜索引擎是一種`通用爬蟲`,側重通用性的全網頁面爬取,而不是針對不同類型頁面的數據進行詳細的提取處理。
因而我們常常是通過搜索關鍵詞作為入口來搜索到關鍵詞相關聯的鏈接地址,具體這里的數據是什么格式通常通用爬蟲是不會關心的。
## 專用爬蟲
針對特定頁面或網站而開發的的爬蟲,會對頁面的數據進行有效篩選、處理分析等操作,并且持久化到數據庫或者磁盤文件中。
我們今后要了解的爬蟲就是此類`專用爬蟲`。
- 課程大綱
- 入門篇
- 爬蟲是什么
- 為什么要學習爬蟲
- 爬蟲的基本原理
- TCP/IP協議族的基本知識
- HTTP協議基礎知識
- HTML基礎知識
- HTML_DOM基礎知識
- urllib3庫的基本使用
- requests庫的基本使用
- Web頁面數據解析處理方法
- re庫正則表達式的基礎使用
- CSS選擇器參考手冊
- XPath快速了解
- 實戰練習:百度貼吧熱議榜
- 進階篇
- 服務端渲染(CSR)頁面抓取方法
- 客戶端渲染(CSR)頁面抓取方法
- Selenium庫的基本使用
- Selenium庫的高級使用
- Selenium調用JavaScript方法
- Selenium庫的遠程WebDriver
- APP移動端數據抓取基礎知識
- HTTP協議代理抓包分析方法
- Appium測試Android應用基礎環境準備
- Appium爬蟲編寫實戰學習
- Appium的元素相關的方法
- Appium的Device相關操作方法
- Appium的交互操作方法
- 代理池的使用與搭建
- Cookies池的搭建與用法
- 數據持久化-數據庫的基礎操作方法(mysql/redis/mongodb)
- 執行JS之execjs庫使用
- 高級篇
- Scrapy的基本知識
- Scrapy的Spider詳細介紹
- Scrapy的Selector選擇器使用方法
- Scrapy的Item使用方法
- Scrapy的ItemPipeline使用方法
- Scrapy的Shell調試方法
- Scrapy的Proxy設置方法
- Scrapy的Referer填充策略
- Scrapy的服務端部署方法
- Scrapy的分布式爬蟲部署方法
- Headless瀏覽器-pyppeteer基礎知識
- Headless瀏覽器-pyppeteer常用的設置方法
- Headless瀏覽器-反爬應對辦法
- 爬蟲設置技巧-UserAgent設置
- 反爬策略之驗證碼處理方法
- 反爬識別碼之點擊文字圖片的自動識別方法
- 反爬字體處理方法總結
- 防止反爬蟲的設置技巧總結
- 實戰篇
- AJAX接口-CSDN技術博客文章標題爬取
- AJAX接口-拉購網職位搜索爬蟲
- 執行JS示例方法一之動漫圖片地址獲取方法
- JS執行方法示例二完整mangabz漫畫爬蟲示例
- 應用實踐-SOCKS代理池爬蟲
- 落霞小說爬蟲自動制作epub電子書
- 一種簡單的適用于分布式模式知乎用戶信息爬蟲實現示例
- 法律安全說明