日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

你真的知道了嗎,爬蟲工程師( 二 )


一般來說 , 需要爬出來的信息都是結(jié)構(gòu)化的 , 如果不是結(jié)構(gòu)化的 , 那么也就沒什么意義了(百分之八十的數(shù)據(jù)是非結(jié)構(gòu)化的) 。爬蟲的規(guī)模可達(dá)可小 , 小到可以爬取豆瓣的top 250電影 , 定時爬取一個星期的天氣預(yù)報(bào)等 。大到可以爬取整個互聯(lián)網(wǎng)的網(wǎng)頁(例如google) 。下面這些 , 我認(rèn)為都可以叫做爬蟲:1.爬知乎的作者和回答2.爬百度網(wǎng)盤的資源 , 存到數(shù)據(jù)庫中(當(dāng)然 , 只是保存資源的鏈接和標(biāo)題) , 然后制作一個網(wǎng)盤的搜索引擎3.同上 , 種子網(wǎng)站的搜索引擎也是這樣的到這里 , 我們知道爬蟲的任務(wù)是獲取數(shù)據(jù) 。
現(xiàn)在比較流行大數(shù)據(jù) , 從互聯(lián)網(wǎng)方面講 , 數(shù)據(jù)可以分成兩種 , 一種是用戶產(chǎn)生的(UGC) , 第二種就是通過一些手段獲得的 , 通常就是爬蟲 。爬蟲又不僅僅局限于從網(wǎng)頁中獲得數(shù)據(jù) , 也可以從app抓包等 。簡而言之 , 就是聚合數(shù)據(jù)并讓他們結(jié)構(gòu)化 。那么 , 哪些工作需要爬蟲呢?2.爬蟲能做什么?典型的數(shù)據(jù)聚合類的網(wǎng)站都需要爬蟲 。比如Google搜索引擎 。
Google能在幾毫秒之內(nèi)提供給你包含某些關(guān)鍵字的頁面 , 肯定不是實(shí)時給你去找網(wǎng)頁的 , 而是提前抓好 , 保存在他們自己的數(shù)據(jù)庫里(那他們的數(shù)據(jù)庫得多大呀) 。所以種子搜索引擎 , 網(wǎng)盤搜索引擎 , Resillio key引擎等都是用爬蟲實(shí)現(xiàn)抓好數(shù)據(jù)放在數(shù)據(jù)庫里的 。另外有一些提供信息對比的網(wǎng)站 , 比如比價類的網(wǎng)站 , 就是通過爬蟲抓取不同購物網(wǎng)站商品的價格 , 然后將各個購物網(wǎng)站的價格展示在網(wǎng)站上 。
購物網(wǎng)站的價格時時都在變 , 但是比價網(wǎng)站抓到的數(shù)據(jù)不會刪除 , 所以可以提供價格走勢 , 這是購物網(wǎng)站不會提供的信息 。除此之外 , 個人還可以用爬蟲做一些好玩的事情 。比如我們想看大量的圖片 , 可以寫一個爬蟲批量下載下來 , 不必一個一個點(diǎn)擊保存 , 還要忍受網(wǎng)站的廣告了;比如我們想備份自己的資料 , 例如保存下來我們在豆瓣發(fā)布過的所有的廣播 , 可以使用爬蟲將自己發(fā)布的內(nèi)容全部抓下來 , 這樣即使一些網(wǎng)站沒有提供備份服務(wù) , 我們也可以自己豐衣足食 。
二、爬蟲工程師需要掌握哪些技能?我見過這樣的說法:“爬蟲是低級、重復(fù)性很多的工作 , 沒有發(fā)展前途” 。這是誤解 。首先 , 對于程序員來說基本上不存在重復(fù)性的工作 , 任何重復(fù)勞動都可以通過程序自動解決 。例如博主之前要抓十幾個相似度很高但是html結(jié)構(gòu)不太一樣的網(wǎng)站 , 我就寫了一個簡單的代碼生成器 , 從爬蟲代碼到單元測試代碼都可以自動生成 , 只要對應(yīng)html結(jié)構(gòu)稍微修改一下就行了 。
所以我認(rèn)為 , 重復(fù)性的勞動在編程方面來說基本上是不存在的 , 如果你認(rèn)為自己做的工作是重復(fù)性的 , 說明你比較勤快 , 不愿意去偷懶 。而我還認(rèn)為 , 勤快的程序員不是好程序員 。下面我根據(jù)自己這段時間的工作經(jīng)歷 , 講一講爬蟲需要哪些相關(guān)的技能 。1.基本的編碼基礎(chǔ)(至少一門編程語言)這個對于任何編程工作來說都是必須的 ?;A(chǔ)的數(shù)據(jù)結(jié)構(gòu)你得會吧 。
數(shù)據(jù)名字和值得對應(yīng)(字典) , 對一些url進(jìn)行處理(列表)等等 。事實(shí)上 , 掌握的越牢固越好 , 爬蟲并不是一個簡單的工作 , 也并不比其他工作對編程語言的要求更高 。熟悉你用的編程語言 , 熟悉相關(guān)的框架和庫永遠(yuǎn)是百益無害 。我主要用Python , 用Java寫爬蟲的也有 , 理論上講任何語言都可以寫爬蟲的 , 不過最好選擇一門相關(guān)的庫多 , 開發(fā)迅速的語言 。

推薦閱讀