Python爬蟲相關(guān)框架集合

前言

最近做了一個python自動登錄淘寶爬取數(shù)據(jù)的腳本,關(guān)于這個腳本下篇會做介紹凰浮,在這之間涉及到許多框架根穷,也遇到一些問題姜骡,所以在此主要做一些總結(jié)以備以后查詢导坟。

Python安裝

各平臺安裝Python的方法參考: 安裝python

Python的入門和語法參考:
Python基礎(chǔ)教程
廖雪峰Python教程

Requests庫的安裝和使用

在Python爬蟲開發(fā)中最為常用的庫就是使用Requests實現(xiàn)HTTP請求屿良,因為Requests實現(xiàn)HTTP請求簡單、操作更為人性化惫周。

安裝Requests庫
pip3 install requests

Requests庫主要提供以下七種請求方法

Requests庫的7個主要方法.png

具體使用參考如下:
快速上手Requests

Scrapy庫的安裝和使用

scrapy安裝
pip3 install Scrapy

scrapy的具體使用參考中文官網(wǎng)如下:
scrapy快速入門

selenium庫的安裝和使用

selenium: 是一個用于對web網(wǎng)頁進行自動化測試的工具, 可以通過它提供的一些方法自動操作瀏覽器, 可以完全模擬人的操作

selenium在Python爬蟲中的應(yīng)用:

1 獲取動態(tài)網(wǎng)頁中的數(shù)據(jù), 一些動態(tài)的數(shù)據(jù)我們在獲取的源碼中并沒有顯示的這一類動態(tài)加載數(shù)據(jù)

2 用于模擬登錄, 一些比較復(fù)雜的登錄過程, 如果不通過selenium中的瀏覽器驅(qū)動完成登錄的話, 我們需要分析出來這個登錄發(fā)起的所有請求之間關(guān)聯(lián),包括cookie等關(guān)鍵信息(比如知乎登錄), 而通過selenium驅(qū)動瀏覽器來完成知乎登錄的話, 就不需要考慮一些cookie, 請求和請求之間的關(guān)聯(lián)等信息, 只需要用戶名和密碼即可登錄

selenium的特點
  1. 它是通過驅(qū)動瀏覽器來進行頁面登錄, 或者是獲取頁面信息

  2. 通過selenium來爬取網(wǎng)址的時候, 效率比較低, 因為瀏覽器的打開, 請求, 渲染頁面都需要一定的時間, 所以盡量少使用selenium進行網(wǎng)站爬取, 除非是動態(tài)網(wǎng)站

  3. selenium提供的一些用于元素定位和查找的API都是純Python語言實現(xiàn)的, 所以效率上看, 沒有l(wèi)xml中的定位API效率高

  4. selenium是開源免費的, 支持主流的瀏覽器, IE, FireFox, Chrome, Opera, Safari等

使用方法:

  1. 安裝selenium:
pip3 install selenium (第三方庫)
  1. 安裝Chrome 瀏覽器驅(qū)動, chromedriver
    下載完成后:

windows 下尘惧,新建一個命名為chromedriver文件夾,將解壓的chromedriver.exe放進文件夾递递,再配置進path環(huán)境變量

Mac喷橙、Linux下,把下載好的文件放在 /usr/bin 目錄下就可以了登舞。

注意: 瀏覽器驅(qū)動的版本最好要和瀏覽器的版本相匹配, 否則會出現(xiàn)不能啟動瀏覽器的錯誤!

安裝完成后:

1.引入這個庫

from selenium import webdriver

2.創(chuàng)建一個Chrome瀏覽器對象

browser = webdriver.Chrome()

3.通過瀏覽器對象browser向某一個url發(fā)起請求

browser.get(url)

4.關(guān)閉瀏覽器

browser.quite()

mitmproxy庫的安裝和使用

mitmproxy是一個支持HHTP/HTTPS協(xié)議的抓包程序贰逾,類似Fiddler、Charles的功能菠秒,只不過世它通過控制臺的形式操作疙剑。

mitmproxy還有兩個關(guān)聯(lián)組件:

mitmdump:它是mitmproxy的命令行接口,利用它我們可以對接Python腳本践叠,用Python實現(xiàn)監(jiān)聽后的處理言缤。

mitmweb: 它是一個Web程序,通過它我們可以清楚觀察mimproxy捕獲的請求禁灼。
mitmproxy的功能:

攔截HTTP和HTTPS請求和響應(yīng)
保存HTTP會話請進行分析
模擬客戶端請求管挟,模擬服務(wù)器返回響應(yīng)
利用反向代理將流量轉(zhuǎn)發(fā)給指定的服務(wù)器
支持Mac和Linux上的透明代理
利用Python對HTTP請求和響應(yīng)進行實時處理

安裝:

完成mitmproxy的安裝,另外還附帶安裝了mitmdump和mimweb這兩個組件
pip3 install mitmproxy

pip3 install mitmproxy

PyQuery安裝和用法

PyQuery庫也是一個非常強大又靈活的網(wǎng)頁解析庫弄捕,如果你有前端開發(fā)經(jīng)驗的僻孝,都應(yīng)該接觸過jQuery,那么PyQuery就是你非常絕佳的選擇,PyQuery 是 Python 仿照 jQuery 的嚴格實現(xiàn)守谓。語法與 jQuery 幾乎完全相同穿铆,所以不用再去費心去記一些奇怪的方法了。
官網(wǎng)地址:http://pyquery.readthedocs.io/en/latest/
jQuery參考文檔: http://jquery.cuishifeng.cn/

安裝:
pip3 install pyquery

XPath的安裝和用法
XPath分飞,全稱XML Path Language悴务,即XML路徑語言,它是一門在XML文檔中查找信息的語言譬猫。它最初是用來搜尋XML文檔的讯檐,但是它同樣適用于HTML文檔的搜索。
XPath的選擇功能十分強大染服,它提供了非常簡潔明了的路徑選擇表達式别洪。另外,它還提供了超過100個內(nèi)建函數(shù)柳刮,用于字符串挖垛、數(shù)值痒钝、時間的匹配以及節(jié)點、序列的處理等痢毒。幾乎所有我們想要定位的節(jié)點送矩,都可以用XPath來選擇。

安裝
pip3 install lxml
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末哪替,一起剝皮案震驚了整個濱河市栋荸,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌凭舶,老刑警劉巖晌块,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異帅霜,居然都是意外死亡匆背,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門身冀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來钝尸,“玉大人,你說我怎么就攤上這事闽铐〉” “怎么了?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵兄墅,是天一觀的道長踢星。 經(jīng)常有香客問我,道長隙咸,這世上最難降的妖魔是什么沐悦? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮五督,結(jié)果婚禮上藏否,老公的妹妹穿的比我還像新娘。我一直安慰自己充包,他們只是感情好副签,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著基矮,像睡著了一般淆储。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上家浇,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天本砰,我揣著相機與錄音,去河邊找鬼钢悲。 笑死点额,一個胖子當著我的面吹牛舔株,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播还棱,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼载慈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了诱贿?” 一聲冷哼從身側(cè)響起娃肿,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎珠十,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凭豪,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡焙蹭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了嫂伞。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片孔厉。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖帖努,靈堂內(nèi)的尸體忽然破棺而出撰豺,到底是詐尸還是另有隱情,我是刑警寧澤拼余,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布污桦,位于F島的核電站,受9級特大地震影響匙监,放射性物質(zhì)發(fā)生泄漏凡橱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一亭姥、第九天 我趴在偏房一處隱蔽的房頂上張望稼钩。 院中可真熱鬧,春花似錦达罗、人聲如沸坝撑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽巡李。三九已至,卻和暖如春滔蝉,著一層夾襖步出監(jiān)牢的瞬間击儡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工蝠引, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留阳谍,地道東北人蛀柴。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像矫夯,于是被迫代替她去往敵國和親鸽疾。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 上網(wǎng)原理 1训貌、爬蟲概念 爬蟲是什麼制肮? 蜘蛛,蛆递沪,代碼中豺鼻,就是寫了一段代碼,代碼的功能從互聯(lián)網(wǎng)中提取數(shù)據(jù) 互聯(lián)網(wǎng): ...
    riverstation閱讀 8,073評論 1 2
  • 1. 概述 本文主要介紹網(wǎng)絡(luò)爬蟲款慨,采用的實現(xiàn)語言為Python儒飒,目的在于闡述網(wǎng)絡(luò)爬蟲的原理和實現(xiàn),并且對目前常見的...
    Lemon_Home閱讀 2,756評論 0 21
  • 想寫報道已然許久井誉,之前或許是因為心有戚戚焉,也或許……但嘗試一下也未必不可整胃,故挺而走險舉手作之颗圣。 ...
    別浮躁請荌靜閱讀 419評論 1 0
  • 樂活 每天晨起撿秋果, 幸運快樂伴隨我爪模。 煩惱與我無關(guān)連欠啤, 浪漫紅塵樂中裹。 今日收獲多多屋灌,快樂多多洁段,幸福多多,夢...
    往事如煙胖婆婆閱讀 570評論 12 22
  • 在現(xiàn)實世界里,沒有人會像方燈愛傅鏡殊,陸一愛方燈那樣愛自己的愛人吧共郭。這樣的愛太沉重祠丝。但他們都是千瘡百孔的人,所以...
    鹿燁閱讀 673評論 0 2