Python Scrapy V2EX 爬蟲

Python 語(yǔ)言

大部分人學(xué) Python 都是作為第二語(yǔ)言來(lái)學(xué)的, 所以既然已經(jīng)有了其它語(yǔ)言的基礎(chǔ), 我就推薦 2 個(gè)小而美的教程, 百頁(yè)左右, 不啰嗦

先看完這 2 個(gè)教程其一, 就可以開始寫 Python 了... 遇到不明確的地方再去詳細(xì)了解, 比如 generator, yield

HTML & CSS & JS

w3school 是入門基礎(chǔ), 要用爬蟲獲取數(shù)據(jù), 必須先了解 HTML 的結(jié)構(gòu)

爬蟲

網(wǎng)站爬蟲的大體思路是 :

  1. 模擬網(wǎng)站登錄請(qǐng)求
  2. 網(wǎng)絡(luò)請(qǐng)求獲取網(wǎng)頁(yè)源代碼
  3. CSS selector 或 xpath 選定需要的元素, 獲取內(nèi)容屬性等
  4. 結(jié)構(gòu)化數(shù)據(jù)并存儲(chǔ)到數(shù)據(jù)庫(kù)
  5. 定時(shí),并發(fā)執(zhí)行爬蟲

Python 爬蟲

要寫一個(gè)爬蟲, 可以用一些基本的庫(kù), 也可以用爬蟲框架 :

基本庫(kù)

  1. Beautiful Soup : 從 HTML 獲取指定的節(jié)點(diǎn)及數(shù)據(jù)
  2. Requests: HTTP for Humans : 網(wǎng)絡(luò)請(qǐng)求庫(kù)

最核心的就是這 2 個(gè)模塊, 其它的數(shù)據(jù)存儲(chǔ), 定時(shí)任務(wù), 多線程等都是錦上添花

不錯(cuò)的教程
Python爬蟲利器一之Requests庫(kù)的用法
Python爬蟲利器二之Beautiful Soup的用法
Scrapy筆記11- 模擬登錄
Scrapy隨機(jī)更換User-Agent和實(shí)現(xiàn)IP代理池

爬蟲框架

  1. Scrapy
  2. PySpider

由于公司原因, 我接觸的是 Scrapy

Scrapy 是一個(gè)相對(duì)成熟的框架, 多線程, 并發(fā)數(shù), 中間件, 超時(shí), 自定義 header, UA, 數(shù)據(jù)庫(kù)存儲(chǔ), Log, 部署 等等都有成熟的解決方案和示例, 這也是我選擇使用它的原因.

不錯(cuò)的教程
scrapy爬蟲框架教程(一)-- Scrapy入門
利用Scrapy爬取所有知乎用戶詳細(xì)信息并存至MongoDB(附視頻和源碼)

部署

Scrapy 官網(wǎng) 可以看到, 官方的部署指南,

動(dòng)態(tài)頁(yè)面

  1. 有些頁(yè)面的數(shù)據(jù)是 JS 動(dòng)態(tài)加載的, 比如懶加載圖片, 滾動(dòng)加載更多等
    • 此時(shí), 我們直接發(fā)送網(wǎng)絡(luò)請(qǐng)求獲取到的頁(yè)面, 并沒(méi)有執(zhí)行 JS 代碼, 所以懶加載的元素都尚為加載出來(lái), 我們需要下面 2 個(gè)庫(kù).
  2. Python 代碼控制 PhantomJS 加載頁(yè)面, 然后 Selenium 模擬用戶點(diǎn)擊, 滾動(dòng)屏幕, 觸發(fā)網(wǎng)頁(yè)中的 AJAX 加載更多內(nèi)容的請(qǐng)求, 等元素都加載完全, 再爬取數(shù)據(jù)

Selenium : web的自動(dòng)測(cè)試工具, 模擬點(diǎn)擊按鈕, 滾動(dòng)頁(yè)面等
PhantomJS : 沒(méi)有界面的瀏覽器

不錯(cuò)的教程
Python爬蟲利器五之Selenium的用法
Python爬蟲利器四之PhantomJS的用法

其它

1. 又或者, 你學(xué)習(xí)爬蟲只是想快捷的抓取數(shù)據(jù), 你可以嘗試下面的軟件(網(wǎng)站), 可以不用寫代碼, 可視化的編寫抓取數(shù)據(jù)的任務(wù)
2. 如果你沒(méi)有自己的服務(wù)器, VPS , 可以使用

mLab : 云 MongoDB 服務(wù)

Ref

woodenrobot 的 blog
崔慶才的個(gè)人博客

最后

文章是我爬取 V2EX 的學(xué)習(xí)整理

我的 V2 爬蟲 : V2EX_Crawler

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末馋没,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子览绿,更是在濱河造成了極大的恐慌抵碟,老刑警劉巖筐赔,帶你破解...
    沈念sama閱讀 212,029評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡献宫,警方通過(guò)查閱死者的電腦和手機(jī)堡僻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,395評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門糠惫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人钉疫,你說(shuō)我怎么就攤上這事硼讽。” “怎么了陌选?”我有些...
    開封第一講書人閱讀 157,570評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵理郑,是天一觀的道長(zhǎng)蹄溉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)您炉,這世上最難降的妖魔是什么柒爵? 我笑而不...
    開封第一講書人閱讀 56,535評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮赚爵,結(jié)果婚禮上棉胀,老公的妹妹穿的比我還像新娘。我一直安慰自己冀膝,他們只是感情好唁奢,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,650評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著窝剖,像睡著了一般麻掸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上赐纱,一...
    開封第一講書人閱讀 49,850評(píng)論 1 290
  • 那天脊奋,我揣著相機(jī)與錄音,去河邊找鬼疙描。 笑死诚隙,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的起胰。 我是一名探鬼主播久又,決...
    沈念sama閱讀 39,006評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼效五!你這毒婦竟也來(lái)了地消?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,747評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤火俄,失蹤者是張志新(化名)和其女友劉穎犯建,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瓜客,經(jīng)...
    沈念sama閱讀 44,207評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡适瓦,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,536評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了谱仪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片玻熙。...
    茶點(diǎn)故事閱讀 38,683評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖疯攒,靈堂內(nèi)的尸體忽然破棺而出嗦随,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,342評(píng)論 4 330
  • 正文 年R本政府宣布枚尼,位于F島的核電站贴浙,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏署恍。R本人自食惡果不足惜崎溃,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,964評(píng)論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望盯质。 院中可真熱鬧袁串,春花似錦、人聲如沸呼巷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,772評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)王悍。三九已至破镰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間压储,已是汗流浹背啤咽。 一陣腳步聲響...
    開封第一講書人閱讀 32,004評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留渠脉,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,401評(píng)論 2 360
  • 正文 我出身青樓瓶佳,卻偏偏與公主長(zhǎng)得像芋膘,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子霸饲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,566評(píng)論 2 349

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

  • 爬蟲文章 in 簡(jiǎn)書程序員專題: like:128-Python 爬取落網(wǎng)音樂(lè) like:127-【圖文詳解】py...
    喜歡吃栗子閱讀 21,744評(píng)論 4 412
  • 在這個(gè)世界相遇
    九九一二三閱讀 271評(píng)論 0 0
  • 教是最好的學(xué)句話出自于什么樣的環(huán)境呢?當(dāng)一個(gè)人把這點(diǎn)當(dāng)成他的學(xué)習(xí)方式傻工,會(huì)發(fā)生什么呢霞溪? 1,他當(dāng)時(shí)處于什么樣的學(xué)習(xí)狀...
    周建雄key閱讀 252評(píng)論 1 0
  • 親情是媽媽的懷抱 溫暖如春 親情是媽媽的撫摸 猶如三月的暖陽(yáng) 親情是兒時(shí)的炊煙 裊裊升起 遠(yuǎn)遠(yuǎn)地就能聞到家的味道 ...
    心懷夢(mèng)想1閱讀 144評(píng)論 0 0