用爬蟲技術能做到哪些有趣的事情?

一點發現


導語:大數據時代,爬蟲技術的作用,超出很多人的想象。

爬蟲是啥

可能有些小夥伴不太清楚爬蟲技術,這邊用比較簡單的例子,跟各位小夥伴普及下,可能有些地方不夠嚴謹,不過大概意思應該差不多。

我們最常接觸的爬蟲技術,大概是:百度的搜索引擎。

可能有些一看到“搜索引擎”這個詞,就不想往下看。

那麼我用更簡單的方式來說明,“搜索引擎”就是基於爬蟲技術。

你可以把這個玩意當做一隻蜘蛛

蜘蛛在一張蜘蛛網上面爬來爬去的,找尋它的食物,這隻蜘蛛就是爬蟲,這張網就是互聯網。

我們每天,互聯網都會誕生千萬億的信息,而這隻蜘蛛就在互聯網上,到處爬取信息,把對它有用的信息,收錄起來。

當用戶搜索的某個詞的時候,蜘蛛就會把他蒐集到信息,展示給各位小夥伴查看。

這個是最簡單的搜索引擎!

不過期間包含非常多的核心算法,小編也不懂,不過上述應該能夠讓大家瞭解什麼是爬蟲技術。

應該有很多互聯網工作的小夥伴都懂這個原理,他們口中會經常說“蜘蛛”,基本上就是指這個。

只不過有時候對象可能變成“谷歌”“搜搜”或者“360搜索”,但是基礎原理都差不多。

爬蟲的作用

那麼爬蟲技術有什麼作用?

用簡單粗暴的方式來回答,現在是大數據時代,數據就是王的時代,爬蟲技術是獲取數據快速而有效的方法。

比如你是一家生產女性bra的商家,你想想要生產銷量非常好的bra,那麼你想知道,我們天朝的妹紙們底哪些款式或者顏色。

甚至你還想細分到各個年齡層,17歲到25歲的妹紙喜歡什麼款式,25歲到35歲的妹紙喜歡什麼款式。

那麼這個時候要怎麼辦?

最簡單的方法,就是去看下各個電商平臺上,售賣出去信息,而這些數據太過龐大,靠人工去統計,基本上是不可能。

這個時候爬蟲技術就非常有用了!

比如w3cschool上100多個免費的爬蟲實戰中,就有一個上述的項目!

小夥伴如果對python爬蟲技術有興趣的話,可以私信w3cshool“爬蟲”。

來免費試學《python零基礎入門》和《python爬蟲技術:完全掌握爬蟲技術》的信息!

同時還搭載100多個免費的python爬蟲小項目!

爬蟲技術能做什麼

除了上述一個比較神奇的例子之外,其實爬蟲還能夠做很多事情!

上面那張圖,都是爬蟲技術在的實際運用,而且!是免費,提供源代碼,獲取方式上面已經提到了。

具體的還包含機器學習,大數據分析等比較好玩的技術。

另外有些小夥伴問為什麼要用python,這邊得澄清下,爬蟲技術不僅僅是python這門編程語言可以實現,Java、PHP都可以做到,而且也能做的非常好!

只是目前爬蟲技術領域比較熱門的編程語言是python,所以小編用python來舉例!

以上,如果你喜歡這篇文章,給我來個贊,好麼。


W3Cschool



使用此代碼可爬任意網站所有圖片!!


Composerthink


當前的主流爬蟲手段是用Python編程,Python的強大毋庸置疑,但初學者學習Python還是需要一兩個月時間的。有沒有一些更簡單的爬取數據方法呢?答案是有的,我們為你準備瞭如下小工具,對於每個小工具你只需要花十幾分鍾時間,跟著我的步驟走一遍就可以掌握它啦~

一、Microsoft Excel

首先教大家一個用Excel爬取數據的方法,這裡用的Microsoft Excel 2013版本,下面手把手開始教學~

1. 新建Excel,打開它,如下圖所示

2. 點擊“數據”——“自網站”

3. 在彈出的對話框中輸入目標網址,這裡以全國實時空氣質量網站(http://www.pm25.in/rank)為例,點擊轉到,再導入

選擇導入位置,確定

4. 結果如下圖所示,怎麼樣,是不是很贊?

5. 如果要實時更新數據,可以在“數據”——“全部更新”——“連接屬性”中進行設置,輸入更新頻率即可

二、Google Sheet

使用Google Sheet爬取數據前,要保證三點:使用Chrome瀏覽器、擁有Google賬號、電腦已翻牆。如果這三個條件具備了的話,下面我們就開始吧~

1. 打開Google Sheet網站:http://www.google.cn/sheets/about/

2. 在首頁上點擊“轉到Google表格”,然後登錄自己的賬號,可以看到如下界面,再點擊“+”創建新的表格

新建的表格如下:

3. 打開要爬取的目標網站,一個全國實時空氣質量網站http://www.pm25.in/rank,目標網站上的表格結構如下圖所示

4. 回到Google sheet頁面,使用函數=IMPORTHTML(網址, 查詢, 索引),“網址”就是要爬取數據的目標網站,“查詢”中輸入“list”或“table”,這個取決於數據的具體結構類型,“索引”填阿拉伯數字,從1開始,對應著網站中定義的哪一份表格或列表

對於我們要爬取的網站,我們在Google sheet的A1單元格中輸入函數=IMPORTHTML("http://www.pm25.in/rank\

THU數據派


我編程0基礎,前段時間突發奇想,就用爬蟲做過一個事情,不知道算不算有趣。

起因是給女朋友買鑽戒,就突然有了搞一波“大數據”分析的想法,即爬一些鑽石的數據,並建立鑽石各項參數和價格的擬合關係式,類似這樣的事情吧。

  1. 於是用scrapy爬了一波bluenile的鑽石,大約四萬多顆圓鑽吧;
  2. 然後用numpy 和pandas 胡亂分析了一通,matlibplot 可視化後好像能唬到人的樣子………:-D;
詳細的我主頁文章有,比較菜,就不舔著臉給傳送門了。抓到的鑽石數據,有興趣可以私信我哈。

不知何時醒來的加菲


我的爬蟲 https://github.com/wangqifan/ZhiHu

這個爬蟲用實驗室十臺電腦一起幹活,可隨時添加刪除機器,具有良好的伸縮性,為了能夠實現斷點續爬和多臺電腦之間的協作使用了Redis作隊列, 為了保證不重複爬取使用Redis作hash表,所有爬取的任務都放到hash表中進行標記。 爬取太頻繁會被知乎返回429(too many request),應對的策略是掛代理,一種方法是使用專業的雲代理服務(有點貴),另一種是自建代理池,定時爬取互聯網上免費代理ip。最後數據使用sql server存儲, 最後對數據進行分析,使用百度echart.js進行畫圖

ProxyPool

https://github.com/wangqifan/ProxyPool

應用場景

爬蟲過於頻繁的抓取網站信息會被反爬蟲機制屏蔽掉,或者有些網站對我們的Ip有限制,一個IP之能操作一次,這個時候就需要設置代理了。這方面需求還是很大的,有專門的服務商提供代理,沒錢的自己動手打造一個代理池吧

基本思路

部分網站上有免費的代理IP信息,比如xicidaili.com,proxy360.cn。這些網站有很多免費代理IP,然而有些質量不好,需要程序及時從代理池中刪掉質量低的代理,不斷加入優質代理。

WeChatAnalyse

https://github.com/wangqifan/WeChatAnalyse

數據展示


zuin


當然是做統計了....

說下我最近爬取知乎用戶的過程

這是一個知乎爬蟲項目

============

項目地址 https://github.com/rensuperk/javaSpider

============

有興趣可以看看,貼幾張圖吧

這是爬取1個星期的成果


最土豪的人(捐贈最多)



最愛回答問題的人,真勞模.



大概就這些吧,有時間寫個悟空問答的爬蟲玩玩


很窮的老K


爬蟲入門簡單快速,也非常適合新入門的小夥伴培養信心。GitHub對應所有項目,祝大家學習愉快~

WechatSogou [1]– 微信公眾號爬蟲。基於搜狗微信搜索的微信公眾號爬蟲接口,可以擴展成基於搜狗搜索的爬蟲,返回結果是列表,每一項均是公眾號具體信息字典。

DouBanSpider [2]– 豆瓣讀書爬蟲。可以爬下豆瓣讀書標籤下的所有圖書,按評分排名依次存儲,存儲到Excel中,可方便大家篩選蒐羅,比如篩選評價人數>1000的高分書籍;可依據不同的主題存儲到Excel不同的Sheet ,採用User Agent偽裝為瀏覽器進行爬取,並加入隨機延時來更好的模仿瀏覽器行為,避免爬蟲被封。

zhihu_spider [3]– 知乎爬蟲。此項目的功能是爬取知乎用戶信息以及人際拓撲關係,爬蟲框架使用scrapy,數據存儲使用mongo

bilibili-user [4]– Bilibili用戶爬蟲。總數據數:20119918,抓取字段:用戶id,暱稱,性別,頭像,等級,經驗值,粉絲數,生日,地址,註冊時間,簽名,等級與經驗值等。抓取之後生成B站用戶數據報告。

SinaSpider [5]– 新浪微博爬蟲。主要爬取新浪微博用戶的個人信息、微博信息、粉絲和關注。代碼獲取新浪微博Cookie進行登錄,可通過多賬號登錄來防止新浪的反扒。主要使用 scrapy 爬蟲框架。

distribute_crawler [6]– 小說下載分佈式爬蟲。使用scrapy,Redis, MongoDB,graphite實現的一個分佈式網絡爬蟲,底層存儲MongoDB集群,分佈式使用Redis實現,爬蟲狀態顯示使用graphite實現,主要針對一個小說站點。

CnkiSpider [7]– 中國知網爬蟲。設置檢索條件後,執行src/CnkiSpider.py抓取數據,抓取數據存儲在/data目錄下,每個數據文件的第一行為字段名稱。

LianJiaSpider [8]– 鏈家網爬蟲。爬取北京地區鏈家歷年二手房成交記錄。涵蓋鏈家爬蟲一文的全部代碼,包括鏈家模擬登錄代碼。

scrapy_jingdong [9]– 京東爬蟲。基於scrapy的京東網站爬蟲,保存格式為csv。

QQ-Groups-Spider [10]– QQ 群爬蟲。批量抓取 QQ 群信息,包括群名稱、群號、群人數、群主、群簡介等內容,最終生成 XLS(X) / CSV 結果文件。

wooyun_public[11]-烏雲爬蟲。 烏雲公開漏洞、知識庫爬蟲和搜索。全部公開漏洞的列表和每個漏洞的文本內容存在MongoDB中,大概約2G內容;如果整站爬全部文本和圖片作為離線查詢,大概需要10G空間、2小時(10M電信帶寬);爬取全部知識庫,總共約500M空間。漏洞搜索使用了Flask作為web server,bootstrap作為前端。

spider[12]– hao123網站爬蟲。以hao123為入口頁面,滾動爬取外鏈,收集網址,並記錄網址上的內鏈和外鏈數目,記錄title等信息,windows7 32位上測試,目前每24個小時,可收集數據為10萬左右

findtrip [13]– 機票爬蟲(去哪兒和攜程網)。Findtrip是一個基於Scrapy的機票爬蟲,目前整合了國內兩大機票網站(去哪兒 + 攜程)。

163spider [14] – 基於requests、MySQLdb、torndb的網易客戶端內容爬蟲

doubanspiders[15]– 豆瓣電影、書籍、小組、相冊、東西等爬蟲集

QQSpider [16]– QQ空間爬蟲,包括日誌、說說、個人信息等,一天可抓取 400 萬條數據。

baidu-music-spider [17]– 百度mp3全站爬蟲,使用redis支持斷點續傳。

tbcrawler[18]– 淘寶和天貓的爬蟲,可以根據搜索關鍵詞,物品id來抓去頁面的信息,數據存儲在mongodb。

stockholm [19]– 一個股票數據(滬深)爬蟲和選股策略測試框架。根據選定的日期範圍抓取所有滬深兩市股票的行情數據。支持使用表達式定義選股策略。支持多線程處理。保存數據到JSON文件、CSV文件。

BaiduyunSpider[20]-百度雲盤爬蟲。

Spider[21]-社交數據爬蟲。支持微博,知乎,豆瓣。

proxy pool[22]-Python爬蟲代理IP池(proxy pool)。

music-163[23]-爬取網易雲音樂所有歌曲的評論。

jandan_spider[24]-爬取煎蛋妹紙圖片。

CnblogsSpider[25]-cnblogs列表頁爬蟲。

spider_smooc[26]-爬取慕課網視頻。

CnkiSpider[27]-中國知網爬蟲。

knowsecSpider2[28]-知道創宇爬蟲題目。

aiss-spider[29]-愛絲APP圖片爬蟲。

SinaSpider[30]-動態IP解決新浪的反爬蟲機制,快速抓取內容。

csdn-spider[31]-爬取CSDN上的博客文章。

ProxySpider[32]-爬取西刺上的代理IP,並驗證代理可用性


靜謐歲月


什麼是網絡爬蟲?

網絡爬蟲也叫網絡蜘蛛,即Web Spider,名字也是非常之形象。

如果把互聯網比喻成一個蜘蛛網,那麼Spider就是在網上爬來爬去的蜘蛛。網絡蜘蛛通過網頁的鏈接地址來尋找網頁,從網站某一個頁面(通常是首頁)開始,讀取網頁的內容,找到在網頁中的其它鏈接地址,然後通過這些鏈接地址尋找下一個網頁,一直循環下去,直到把整個網站所有的網頁都抓取完為止。 如果把整個互聯網就當成一個網站,那麼網絡蜘蛛可以用這個原理把互聯網上所有的網頁都抓取下來。 光是聽起來就很有意思,那利用這等技術能做些什麼好玩的事兒呢? 大家感受下~~

(1)之前在北京買房,誰想房價開始瘋長,鏈家的房價等數據分析只給了一小部分,遠遠不能滿足自己的需求。於是晚上花了幾個小時的時間寫了個爬蟲,爬下了北京所有的小區信息及北京所有小區的所有歷史成交記錄。

(2)上次發現Android QQ和iOS QQ可以顯示網絡狀態(2G/WiFi)之後,突然想到,這樣子好像可以監視某人的出行和作息規律。簡單的來說,在家裡或者工作的地方,一般是有WiFi的,然後出門了,WiFi就斷掉了。如果監測頻率足夠頻繁,那麼結合一定的推理,可以大致推測出一個人的行動。如果長期監視,那麼可以大致推出一個人的作息時間。

因為只有Android QQ和iOS QQ有這個功能,所以要得到一個人的網絡狀態比較麻煩。我的做法是跑 Android 模擬器。然後用按鍵精靈模擬,並把網絡狀態截圖,用 curl post到服務器上。服務器會把每次發送的時間、截圖保存下來。因為是用程序截圖的,所以只要網絡狀態是一樣的,那麼截圖就是一樣的,這樣服務器就只會保存2~3張圖片而已,其餘的發現是相同的圖片,數據庫做個標記就好了。然後人工做OCR,還是注意到只有2~3張圖片,所以工作量很少。得到數據後,要做各種統計就可以自己搞了……

(3)在用Python寫網頁爬蟲之前,我只用來寫過了一個駕校約車的腳本,讓當時的我不懼上萬的學車同僚,在約車環節沒有輸在起跑線上。接著那段時間,我女朋友的領導每天下班都會下任務,要收集100條有招聘需求的信息,第二天檢查。看到她熬夜百度+複製粘貼到半夜,心疼死了。想到了某個牛人說:一切重複性的工作都可以用程序來完成。於是偷偷花了些時間研究了下她經常查的某些同類業務網站的頁面數據,培育了這隻爬蟲。主要技能就是爬這些網站的招聘公司信息及聯繫方式,保存到Excel中。

在我將戰鬥成果----1000多個客戶資料的Excel表格發給她的時候,先驚喜,後審問,再感慨!依稀記得那天她發了一條朋友圈,內容是:“有個程序員男朋友,感覺好幸福啊!!”成就感走直線啊,都能讓她感到幸福,你說這隻爬蟲是不是做了很酷很有趣的事情呢?

(4)我用爬蟲爬了我愛白菜網、超值分享匯、發現值得買、惠惠購物、今日聚超值、留住你、買手黨、沒得比、慢慢買、牛雜網、買個便宜貨、什麼值得買、天上掉餡餅、一分網、折800值得買、值值值等網站的折扣信息。

(5)大二學生一枚,前段時間中期考試,成績一直不出來,又不想每次都登錄,突然就像用以下所學的東西來乾點事情。 說幹就幹,花了我將近4個小時完成成績提醒功能。主要是用Python定時抓取數據(定時用Ubuntu的crontab),分析數據是否變化,然後發送短信。其實大部分時間是花在分析學校模擬登陸那一塊了,畢竟要提取各種值,還有url重定向,本來就才學Python,對一些東西也不是很熟悉。 運行起來之後還是效果還不錯,10分鐘抓一次,第一時間知道了我的概率論。。。這

些網站都是提供的一些及時的、性價比較高的商品,很多時候要一個一個網站的看(重度用戶),很容易就會錯過一些很划算的商品。


(6)在學校的時候做過一個項目,通過爬微博的文字,分析國內各個地區的用戶收聽蝦米的熱度和最受歡迎的歌手。當然也沒有用什麼很複雜的技術,就是寫基本的TF-IDF。 做完的時候覺得自己好有想法啊,能實現這麼有意思的東西。後來發現早就有公司做過了。當然別人做的是美國版的。 於是現在,我就在這家公司工作。

(7)朋友交易了一套房子,手機號流落到了各種中介手裡,隔幾天就有中介電話騷擾,不勝其煩。每接一個電話都加黑名單,但還是有新號碼打過來,so⋯⋯問我咋辦! Android 手機的攔截倒不是問題,但需要房產經紀人的號碼數據庫,就只能去網上爬了! 各個房產站的廣州站點加上58什麼的,一個多小時爬了快兩萬個號碼,去重之後還有一萬五千多⋯⋯ 一時興起,又去爬了深圳、北京和上海,現在都不知道拿這些號碼去幹嘛了⋯⋯ PS:貌似活躍房產經紀的數量能反應市場活躍度? PS:我覺得我可以把全國城市的都爬下來。


常州安享智能影音


1.抓取別人資料,有利於你找女朋友

2.抓取別人信息,對社會熱點的分析和預測,幫助你賺錢

3.抓取社會消費習慣信息,分析商業行為,預測股市變化

等等太多了,就是有些信息是敏感信息,你別等人家抓你來才才後悔。


小孫161476987


介紹一種高端的玩法:用爬蟲抓取網絡媒體文本,用文本情感分析技術判斷市場情緒,可以預測股市價格波動

常用玩法:通過抓取文本數據判斷熱點


分享到:


相關文章: