Python即時網(wǎng)絡(luò)爬蟲項目啟動說明詳解
作為酷愛編程的老程序員,實在按耐不下這個沖動,Python真的是太火了,不斷撩撥我的心。
我是對Python存有戒備之心的,想當年我基于Drupal做的系統(tǒng),使用php語言,當語言升級了,推翻了老版本很多東西,不得不花費很多時間和精力去移植和升級,至今還有一些隱藏在某處的代碼埋著雷。我估計Python也避免不了這個問題(其實這種聲音已經(jīng)不少,比如Python 3 正在毀滅 Python)。 但是,我還是啟動了這個Python即時網(wǎng)絡(luò)爬蟲項目。我用C++、Java和Javascript編寫爬蟲相關(guān)程序超過10年,要追求高性能,非C++莫屬,同時有完善的標準體系,讓你和你的系統(tǒng)十分自信,只要充分測試,就能按照預(yù)期的方式運行。在GooSeeker項目中,我們不斷向一個方向努力——“收割數(shù)據(jù)”,而且讓廣大用戶(不僅是專業(yè)的數(shù)據(jù)采集用戶)都能體驗到收割互聯(lián)網(wǎng)數(shù)據(jù)的快感?!笆崭睢钡囊粋€重要含義就是大批量?,F(xiàn)在,我要啟動“即時網(wǎng)絡(luò)爬蟲”,目的是要補充“收割”沒有覆蓋的場景,我看到的是:
- 在系統(tǒng)層面:“即時”代表快速部署數(shù)據(jù)應(yīng)用系統(tǒng)
- 在數(shù)據(jù)流層面:“即時”代表采集數(shù)據(jù)到數(shù)據(jù)使用是即時的,單個數(shù)據(jù)對象可以獨自全流程處理,不用等待一批存入數(shù)據(jù)庫,然后從數(shù)據(jù)庫中拿出來用
- “即時”另一個含義就是網(wǎng)絡(luò)爬蟲是一個嵌入模塊,跟整個信息處理系統(tǒng)集成在一起
一眾程序員都在玩Python網(wǎng)絡(luò)爬蟲,我擬定了一個計劃:建立一個模塊化更強的軟件部件,專門解決最耗費精力的內(nèi)容提取問題(有人總結(jié)說大數(shù)據(jù)和數(shù)據(jù)分析整個鏈條上,數(shù)據(jù)準備占了80%工作量,我們不妨延展一下,網(wǎng)絡(luò)數(shù)據(jù)抓取的工作量有80%是在為各種網(wǎng)站的各種數(shù)據(jù)結(jié)構(gòu)編寫抓取規(guī)則)。
我把他想象成一個小機器(見上圖),輸入的是原始網(wǎng)頁,輸出的是提取出來的結(jié)構(gòu)化的內(nèi)容,這個小機器還有一個可替換部件:將輸入轉(zhuǎn)化成輸出結(jié)構(gòu)的一個指令塊,我們成為“提取器”,讓大家不再為調(diào)試正則表達式或者XPath而苦惱。
這是一個開放的項目,兩年前啟動了一個手機上的即時網(wǎng)絡(luò)爬蟲項目,因為是給某商業(yè)集團開發(fā)的,所以不便開放,同樣的思想和方法將開放到這個項目中,而且用當前最熱的python來做,希望大家能共同參與。在執(zhí)行過程中,我們會開放所有資料和成果、已經(jīng)遇到的坑。
近期做的實驗是
python使用xslt提取網(wǎng)頁數(shù)據(jù)
Python爬蟲使用Selenium+PhantomJS抓取Ajax和動態(tài)HTML內(nèi)容
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python socket.error: [Errno 98] Address already in use的原因和解決
這篇文章主要介紹了Python socket.error: [Errno 98] Address already in use的原因和解決方法,在Python的socket編程中可能會經(jīng)常遇到這個問題,需要的朋友可以參考下2014-08-08Python numpy有哪些常用數(shù)據(jù)類型
Numpy提供了兩種基本的對象:ndarray(N-dimensional Array Object)和 ufunc(Universal Function Object)。ndarray是存儲單一數(shù)據(jù)類型的多維數(shù)組,而ufunc則是能夠?qū)?shù)組進行處理的函數(shù)2023-02-02Python DataFrame設(shè)置/更改列表字段/元素類型的方法
今天小編就為大家分享一篇Python DataFrame設(shè)置/更改列表字段/元素類型的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06如何在 Matplotlib 中更改繪圖背景的實現(xiàn)
這篇文章主要介紹了如何在 Matplotlib 中更改繪圖背景的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11跟老齊學(xué)Python之玩轉(zhuǎn)字符串(2)更新篇
本文是玩轉(zhuǎn)字符串的續(xù)篇,繼續(xù)對字符串的連接方法進行介紹,以及字符串復(fù)制、字符串長度、字符大小寫的轉(zhuǎn)換。非常不錯的文章,希望對大家有所幫助2014-09-09通過python讀取txt文件和繪制柱形圖的實現(xiàn)代碼
這篇文章主要介紹了通過python讀取txt文件和繪制柱形圖的實現(xiàn)代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03關(guān)于Python中幾個有趣的函數(shù)和推導(dǎo)式解析
這篇文章主要介紹了關(guān)于Python中幾個有趣的函數(shù)和推導(dǎo)式解析,推導(dǎo)式comprehensions,又稱解析式,是Python的一種獨有特性,推導(dǎo)式是可以從一個數(shù)據(jù)序列構(gòu)建另一個新的數(shù)據(jù)序列的結(jié)構(gòu)體,需要的朋友可以參考下2023-08-08python基礎(chǔ)教程之五種數(shù)據(jù)類型詳解
這篇文章主要介紹了python基礎(chǔ)教程之五種數(shù)據(jù)類型詳解的相關(guān)資料,這里對Python 的數(shù)據(jù)類型進行了詳細介紹,需要的朋友可以參考下2017-01-01