如何在9個(gè)小時(shí)內(nèi)轉(zhuǎn)移3.4萬(wàn)個(gè)WIRED頁(yè)面?

2015-11-02 13:46:00 來(lái)源:創(chuàng)業(yè)邦 作者:佚名 人氣: 次閱讀 155 條評(píng)論

WIRED成立多長(zhǎng)時(shí)間了?我只想說(shuō),如果它是一個(gè)人的話,那么他已經(jīng)超過(guò)法定飲酒年齡了。這20多年來(lái),WIRED已經(jīng)發(fā)表了幾萬(wàn)期刊物,如果將每一本雜志的封面都擺在書架上,一定...

小時(shí) 頁(yè)面 萬(wàn)個(gè)

WIRED成立多長(zhǎng)時(shí)間了?我只想說(shuō),如果它是一個(gè)人的話,那么他已經(jīng)超過(guò)法定飲酒年齡了。這20多年來(lái),WIRED已經(jīng)發(fā)表了幾萬(wàn)期刊物,如果將每一本雜志的封面都擺在書架上,一定會(huì)讓人感到震撼。然而在網(wǎng)頁(yè)上,很顯然無(wú)法進(jìn)行這樣的展示。在這個(gè)背景下,我們決定對(duì)網(wǎng)頁(yè)進(jìn)行一次大掃除。

WIRED.com的發(fā)展故事,向所有人展示了硅谷互聯(lián)網(wǎng)泡沫從出現(xiàn)到破滅的整個(gè)過(guò)程。1993年,在WIRED雜志成立不久之后,HotWired成為了在線新聞?lì)I(lǐng)域的先鋒。但是當(dāng)互聯(lián)網(wǎng)泡沫碎裂之后,網(wǎng)站被賣給了Lycos,而他們旗下的雜志則被出售給了Condé Nast。這兩個(gè)機(jī)構(gòu)后來(lái)各自發(fā)展,直到2006年。在這一年里,Conde收購(gòu)了WIRED.com。在這次收購(gòu)之后,除了紙質(zhì)雜志之外,WIRED還開始發(fā)行電子版雜志。有過(guò)了不久之后,WIRED.com被轉(zhuǎn)移到了wordPress上,開始用一種全新的方式更新網(wǎng)站,并且保留了此前所發(fā)布的所有內(nèi)容。

你可以將這種文章歸檔方式想象成一種數(shù)字冷凍間。這里儲(chǔ)存了WIRED歷史上發(fā)表過(guò)的所有3.422萬(wàn)個(gè)網(wǎng)頁(yè),這些網(wǎng)頁(yè)的出現(xiàn)遠(yuǎn)遠(yuǎn)在WordPress這個(gè)平臺(tái)初現(xiàn)以前。這些網(wǎng)頁(yè)就像是一個(gè)巨大的寶庫(kù),里面記錄了科技發(fā)展在各個(gè)時(shí)期的里程碑,它甚至可以起到科技發(fā)展編年史的作用,從谷歌的誕生,到蘋果的重新崛起,再到社交網(wǎng)絡(luò)的出現(xiàn)。對(duì)于這些內(nèi)容,我們感到十分驕傲,當(dāng)然也非常珍視它們。然而讓我們撓頭的時(shí),雖然這些內(nèi)容的重要性無(wú)需多言,但是由于出現(xiàn)的時(shí)間較早,當(dāng)時(shí)所使用的編程技術(shù)無(wú)法良好的支持我們現(xiàn)在所使用的網(wǎng)頁(yè)技術(shù)。更糟糕的是,這些存檔就像是一個(gè)沒(méi)有網(wǎng)站地圖、也沒(méi)有網(wǎng)站架構(gòu)的黑匣子,是的我們無(wú)法了解它的體積,這使得將這些頁(yè)面遷移到現(xiàn)有網(wǎng)站上成為了一件難度異常高的任務(wù)。

Cyphon的出現(xiàn)

Cyphon是一種我所發(fā)明的技術(shù),我開發(fā)它的用意是為了用一種通用標(biāo)準(zhǔn)來(lái)分析WIRED的大量網(wǎng)頁(yè)存檔,并且存儲(chǔ)其中的相關(guān)數(shù)據(jù)。

今年4月開始,我一直在開發(fā)這種技術(shù),可以說(shuō)Cyphon占據(jù)了我?guī)缀跛械墓ぷ鲿r(shí)間。我決定使用Node.js將Cyphon打造成一個(gè)命令行工具。Node.js是一個(gè)時(shí)下流行的服務(wù)器端平臺(tái),有大量的開發(fā)人員為其提供支持。最初的時(shí)候,我嘗試著對(duì)所有存檔網(wǎng)頁(yè)進(jìn)行分析,試圖找到其中是否有可以自動(dòng)以編程的方式進(jìn)行分類的規(guī)律。在進(jìn)行了一些分析時(shí)候,我發(fā)現(xiàn),大多數(shù)存檔網(wǎng)頁(yè)可以被分成3種類型,每一種類型都對(duì)應(yīng)著各自發(fā)布時(shí)期所使用的技術(shù)。在獲得了這個(gè)信息之后,我制定了內(nèi)容轉(zhuǎn)移流程,并且對(duì)即將使用的工具進(jìn)行了精加工。

首先,我編寫了一個(gè)特殊功能,它可以將大約200本雜志的登錄頁(yè)作為起始點(diǎn),對(duì)所有存檔網(wǎng)頁(yè)進(jìn)行分析。這個(gè)繁冗的分析工作需要花上幾個(gè)小時(shí)的時(shí)間,但是它可以將尚未進(jìn)行分析的頁(yè)面安全的存儲(chǔ)在一個(gè)專門的數(shù)據(jù)庫(kù)中,這樣做的好處是避免了數(shù)據(jù)損壞,而且還能夠避免進(jìn)行重復(fù)分析的危險(xiǎn)。

接下來(lái),我又編寫了一種方式,它可以將分析得來(lái)的粗略數(shù)據(jù)轉(zhuǎn)換為結(jié)構(gòu)性更強(qiáng)的信息:題目、作者、發(fā)布日期等等。在對(duì)每一個(gè)特定時(shí)期的內(nèi)容進(jìn)行分析的時(shí)候,我做了一個(gè)獨(dú)特的“摘要統(tǒng)計(jì)器”。有了這些信息,我們就可以將這些網(wǎng)頁(yè)的HTML導(dǎo)入這個(gè)摘要統(tǒng)計(jì)器,然后進(jìn)行提取。最后,我又發(fā)明了一種能夠?qū)⑦@些數(shù)據(jù)變成WordPress所支持的簡(jiǎn)單格式的方式,然后完成向WordPress平臺(tái)的導(dǎo)入。

在這個(gè)過(guò)程中,對(duì)存檔網(wǎng)頁(yè)進(jìn)行分析,以及對(duì)內(nèi)容發(fā)表時(shí)間的排序成為了技術(shù)上最大的挑戰(zhàn)。讓我欣慰的是,一位名叫Christopher Giffard的開發(fā)人員已經(jīng)編寫了一個(gè)非常優(yōu)秀的分析工具,這個(gè)工具為我提供了重要的幫助,在Node社區(qū)中,很多人都曾經(jīng)靠著其他開發(fā)人員的幫助完成了目標(biāo)。我想在這里特別感謝這位開發(fā)人員。為了更好的完成內(nèi)容分析和歸類,我創(chuàng)造了無(wú)數(shù)的過(guò)濾規(guī)則,這些過(guò)濾規(guī)則能夠辨別相似頁(yè)面中的那些細(xì)微差別,它們也讓內(nèi)容的最終輸出盡可能的靠近當(dāng)前我們所使用的技術(shù)。最重要的是,在剛開始開發(fā)Cyphon的時(shí)候,我就希望它可以被其他人所擴(kuò)展,可以添加其他的分析規(guī)則和摘要統(tǒng)計(jì)器,而我最終完成了這個(gè)目標(biāo)。

例如,在對(duì)雜志文章進(jìn)行了分析之后,我又添加了另一個(gè)工具來(lái)分析URL列表,完成了大量非雜志文章的統(tǒng)計(jì)和導(dǎo)入。

Cyphon所完成的工作:

·34220個(gè)網(wǎng)頁(yè)的分析

·11195篇存檔文章

·14799篇新文章

·97%的數(shù)據(jù)被成功分析并且導(dǎo)入到新網(wǎng)站平臺(tái)

·為所有內(nèi)容生成了1076個(gè)標(biāo)簽

有了這些得來(lái)不易的數(shù)據(jù),我終于可以在WordPress平臺(tái)上瀏覽這些文章了。而直到這個(gè)時(shí)候,我才突然意識(shí)到:從上世紀(jì)90年代,那些先驅(qū)的前赴后繼之后,web已經(jīng)經(jīng)歷了許多的變化。從最早的只有文字的文章,當(dāng)后來(lái)圖片的出現(xiàn),直到現(xiàn)在我們可以在網(wǎng)頁(yè)上直接觀看視頻。在web出現(xiàn)的早期,幾乎所有網(wǎng)頁(yè)看上去都一樣,而如今網(wǎng)頁(yè)的形式已經(jīng)無(wú)窮無(wú)盡。然而,無(wú)論網(wǎng)頁(yè)的布局如何改變,問(wèn)文章的形式幾乎從來(lái)沒(méi)有什么巨大的改變。

小時(shí) 頁(yè)面 萬(wàn)個(gè)

況且,這些文章有著自己的價(jià)值,就像我此前所說(shuō)的,它們是科技世界的編年史,可以讓我們了解科技的發(fā)展進(jìn)程。那么我們要如何利用好這11195篇存檔文章?是否要做一個(gè)回顧科技大事件的專題?我相信網(wǎng)站的內(nèi)容編輯們會(huì)有更好的想法。

在整理這些海量數(shù)據(jù)的同時(shí),我獲得了極大的滿足感。作為一名工程師,完成這樣的工作總會(huì)讓我興奮異常。作為技術(shù)人員,我的職責(zé)之一,就是保留好以前的內(nèi)容,并且將其遷移到新的網(wǎng)站上,讓讀者在需要的時(shí)候可以輕松的找到這些內(nèi)容。我現(xiàn)在的感覺(jué),就是將這些數(shù)字內(nèi)容整齊的拜訪到了虛擬書架上。

您可能感興趣的文章

    無(wú)相關(guān)信息

相關(guān)文章