大家好哈,最近博主在學習Python,學習期間也遇到一些問題,獲得了一些經驗,在此將自己的學習系統地整理下來,如果大家有興趣學習爬蟲的話,可以將這些文章作為參考,也歡迎大家一共分享學習經驗。
Python版本:2.7,Python 3請另尋其他博文。
首先爬蟲是什么?
> 網絡爬蟲(又被稱為網頁蜘蛛,網絡機器人,在FOAF社區中間,更經常的稱為網頁追逐者),是一種按照一定的規則,自動的抓取萬維網信息的程序或者腳本。
根據我的經驗,要學習Python爬蟲,我們要學習的共有以下幾點:
* Python基礎知識
* Python中urllib和urllib2庫的用法
* Python正則表達式
* Python爬蟲框架Scrapy
* Python爬蟲更高級的功能
## 1.Python基礎學習
首先,我們要用Python寫爬蟲,肯定要了解Python的基礎吧,萬丈高樓平地起,不能忘啦那地基,哈哈,那么我就分享一下自己曾經看過的一些Python教程,小伙伴們可以作為參考。
### 1) 慕課網Python教程
曾經有一些基礎的語法是在慕課網上看的,上面附有一些練習,學習完之后可以作為練習,感覺效果還是蠻不錯的,不過稍微遺憾的是內容基本上都是最基礎的,入門開始的話,就這個吧
學習網址:慕課網Python教程
### 2) 廖雪峰Python教程
后來,我發現了廖老師的Python教程,講的那是非常通俗易懂哪,感覺也是非常不錯,大家如果想進一步了解Python就看一下這個吧。
學習網址:[廖雪峰Python教程](http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000)
### 3) 簡明Python教程
還有一個我看過的,簡明Python教程,感覺講的也不錯
學習網址:[簡明Python教程](http://woodpecker.org.cn/abyteofpython_cn/chinese/pr01.html#s01)
## 2.Python urllib和urllib2 庫的用法
urllib和urllib2庫是學習Python爬蟲最基本的庫,利用這個庫我們可以得到網頁的內容,并對內容用正則表達式提取分析,得到我們想要的結果。這個在學習過程中我會和大家分享的。
## 3.Python 正則表達式
Python正則表達式是一種用來匹配字符串的強有力的武器。它的設計思想是用一種描述性的語言來給字符串定義一個規則,凡是符合規則的字符串,我們就認為它“匹配”了,否則,該字符串就是不合法的。這個在后面的博文會分享的。
## 4.爬蟲框架Scrapy
如果你是一個Python高手,基本的爬蟲知識都已經掌握了,那么就尋覓一下Python框架吧,我選擇的框架是Scrapy框架。這個框架有什么強大的功能呢?下面是它的官方介紹:
> HTML, XML源數據 選擇及提取 的內置支持
> 提供了一系列在spider之間共享的可復用的過濾器(即 Item Loaders),對智能處理爬取數據提供了內置支持。
> 通過 feed導出 提供了多格式(JSON、CSV、XML),多存儲的內置支持
> 提供了media pipeline,可以 自動下載 爬取到的數據中的圖片(或者其他資源)。
> 高擴展性。您可以通過使用 signals ,設計好的API(中間件, extensions, pipelines)來定制實現您的功能。
> 內置的中間件及擴展為下列功能提供了支持:
> cookies and session 處理
> HTTP 壓縮
> HTTP 認證
> HTTP 緩存
> user-agent模擬
> robots.txt
> 爬取深度限制
> 針對非英語語系中不標準或者錯誤的編碼聲明, 提供了自動檢測以及健壯的編碼支持。
> 支持根據模板生成爬蟲。在加速爬蟲創建的同時,保持在大型項目中的代碼更為一致。詳細內容請參閱 genspider 命令。
> 針對多爬蟲下性能評估、失敗[檢測]shell終端 , 為您測試XPath表達式,編寫和調試爬蟲提供了極大的方便
> 提供 System service, 簡化在生產環境的部署及運行
> 內置 Web service, 使您可以監視及控制您的機器
> 內置 Telnet終端 ,通過在Scrapy進程中鉤入Python終端,使您可以查看并且調試爬蟲
> Logging 為您在爬取過程中捕捉錯誤提供了方便
> 支持 Sitemaps 爬取
> 具有緩存的DNS解析器
官方文檔:[http://doc.scrapy.org/en/latest/](http://doc.scrapy.org/en/latest/)
等我們掌握了基礎的知識,再用這個 Scrapy 框架吧!
扯了這么多,好像沒多少有用的東西額,那就不扯啦!
下面開始我們正式進入爬蟲之旅吧!
- Python爬蟲入門
- (1):綜述
- (2):爬蟲基礎了解
- (3):Urllib庫的基本使用
- (4):Urllib庫的高級用法
- (5):URLError異常處理
- (6):Cookie的使用
- (7):正則表達式
- (8):Beautiful Soup的用法
- Python爬蟲進階
- Python爬蟲進階一之爬蟲框架概述
- Python爬蟲進階二之PySpider框架安裝配置
- Python爬蟲進階三之Scrapy框架安裝配置
- Python爬蟲進階四之PySpider的用法
- Python爬蟲實戰
- Python爬蟲實戰(1):爬取糗事百科段子
- Python爬蟲實戰(2):百度貼吧帖子
- Python爬蟲實戰(3):計算大學本學期績點
- Python爬蟲實戰(4):模擬登錄淘寶并獲取所有訂單
- Python爬蟲實戰(5):抓取淘寶MM照片
- Python爬蟲實戰(6):抓取愛問知識人問題并保存至數據庫
- Python爬蟲利器
- Python爬蟲文章
- Python爬蟲(一)--豆瓣電影抓站小結(成功抓取Top100電影)
- Python爬蟲(二)--Coursera抓站小結
- Python爬蟲(三)-Socket網絡編程
- Python爬蟲(四)--多線程
- Python爬蟲(五)--多線程續(Queue)
- Python爬蟲(六)--Scrapy框架學習
- Python爬蟲(七)--Scrapy模擬登錄
- Python筆記
- python 知乎爬蟲
- Python 爬蟲之——模擬登陸
- python的urllib2 模塊解析
- 蜘蛛項目要用的數據庫操作
- gzip 壓縮格式的網站處理方法
- 通過瀏覽器的調試得出 headers轉換成字典
- Python登錄到weibo.com
- weibo v1.4.5 支持 RSA協議(模擬微博登錄)
- 搭建Scrapy爬蟲的開發環境
- 知乎精華回答的非專業大數據統計
- 基于PySpider的weibo.cn爬蟲
- Python-實現批量抓取妹子圖片
- Python庫
- python數據庫-mysql
- 圖片處理庫PIL
- Mac OS X安裝 Scrapy、PIL、BeautifulSoup
- 正則表達式 re模塊
- 郵件正則
- 正則匹配,但過濾某些字符串
- dict使用方法和快捷查找
- httplib2 庫的使用