不少優秀的程序員和技術人員喜歡寫技術文章和技術博客,經過這樣的方式分享傳播知識和經驗,擴大本身的知名度和影響力,吸引粉絲關注,甚至有些技術博主還經過寫文章來獲取廣告收入,不少優秀的博主還經過這種方法得到了出版書的機會以及工做機會。所以,寫技術文章是一件很是值得投入的事情,幫助了本身,也讓大衆受益。前端
可是,寫技術文章一般也很耗時,特別是一些優質文章,不只須要旁徵博引、構思文章結構、照顧讀者受衆,還須要作不少前期工做,例如搭建環境、寫demo代碼、測試代碼等等。一篇優質技術文章一般須要3-6個小時來完成。然而,花了不少時間來寫文章,最終發佈出來的文章得不到不少人的關注是一件至關使人沮喪的事情。咱們認爲,優質文章值得獲取關注和傳播,讓更多的技術工做者經過閱讀文章獲取知識獲益。git
每一個技術博主都有本身喜歡的技術媒體平臺,例如掘金、CSDN、微信公衆號等等。不少技術博主也喜歡將文章發佈在不一樣的平臺上,尋求最大的關注度,同時也防止本身辛辛苦苦寫的文章被別人複製粘貼盜版過去。然而,在多個平臺上發文是一件麻煩的事情:博主須要同時登錄多個媒體平臺,將本身的文章複製一個一個粘貼過去;更麻煩的是,有些平臺只支持Markdown,有些平臺只支持富文本,博主須要在這二者之間來回轉換,這增長了工做量。程序員
一文多發平臺ArtiPub就解決了這樣的問題。下面咱們將介紹一下近日剛上線的開源一文多發平臺ArtiPub。github
ArtiPub (Article Publisher的簡稱,意爲"文章發佈者")是一款開源的一文多發平臺,能夠幫助文章做者將編寫好的文章自動發佈到掘金、SegmentFault、CSDN、知乎、開源中國等技術媒體平臺,傳播優質知識,獲取最大的曝光度。ArtiPub安裝簡單,提供了多種安裝方式(Docker、NPM、源碼),能夠一鍵安裝使用,安裝通常只要5分鐘。ajax
ArtiPub首發版目前支持文章編輯、文章發佈、數據統計的功能,後期咱們會加入存量文章導入、數據分析的功能,讓您更好的管理、優化您的技術文章。此外,咱們還會接入更多媒體渠道,真正作到讓文章隨處可閱。docker
用戶使用ArtiPub也很簡單,只須要在瀏覽器上打開ArtiPub的Web界面,將文章以Markdown的形式輸入到編輯器,而後點擊一鍵發佈,等待不到1分鐘,文章就自動同步到各大技術媒體平臺了。此外,文章的閱讀、點贊、評論數據還將週期性的被同步回來,讓做者能夠近實時看到文章的傳播狀況。數據庫
下面是平臺的Web界面截屏,固然咱們更推薦您去實際安裝體驗ArtiPub。npm
市面上已經存在一文多發平臺了,例如OpenWrite,爲什麼還要建立ArtiPub呢?或許其餘一文多發平臺也是一個替代方案,但它們要求用戶將本身的帳戶信息例如Cookie或帳號密碼上傳到對方服務器,這很不安全,一旦平臺發生問題,本身的帳戶信息會遭到泄漏。雖然我相信通常平臺不會惡意操做用戶的帳戶,但若是出現誤操做,您的帳戶隱私將遭到泄漏,平臺上的財產也可能遭到損壞,有這樣的風險須要考慮。ArtiPub不要求用戶上傳帳戶信息,全部帳戶信息所有保存在用戶本身的數據庫裏,所以規避了這個安全風險。後端
另外,因爲ArtiPub是開源的,JS源碼也比較易於理解,可擴展性很強,用戶若是有其餘平臺的接入需求,徹底能夠經過更改源碼來實現本身的需求,不用等待平臺更新。開發組也將持續開發ArtiPub,將其打造得更實用和易用。瀏覽器
其實ArtiPub的原理不復雜,簡單來講就是利用了爬蟲技術將文章發佈到各大平臺。ArtiPub的爬蟲是用了Google開發的自動化測試工具Puppeteer,這個工具不只能夠獲取須要有ajax動態內容的數據,還能夠來作一些模擬操做,相似於Selenium,但更強大。如何進行登錄操做呢?其實ArtiPub是經過Chrome插件獲取了用戶登錄信息(Cookie),將Cookie注入到Puppeteer操做的Chromium瀏覽器中,而後瀏覽器就能夠正常登錄網站進行發文操做了。Cookie是保存在用戶本身搭建的MongoDB數據庫裏,不對外暴露,所以很安全。
下圖是ArtiPub的架構示意圖。
架構原理簡介以下:
總的來講,ArtiPub解決了用戶須要多平臺發佈文章、又不想泄漏帳戶信息的痛點。用戶徹底能夠免費的使用ArtiPub,由於它是開源的,架構原理也很透明,開發者也能夠本身去貢獻該開源項目。ArtiPub很實用,做者已經將一些存量文章都發布到各個可用平臺上了,效果還不錯。甚至,本篇文章也是用ArtiPub編寫和發佈的,想要嘗試的話,請到Github、Docker、NPM主頁上安裝體驗。
若是您以爲 ArtiPub 對您有幫助,請掃描下方羣二維碼,若是羣滿,請加做者微信 tikazyq1 並註明"ArtiPub",做者會將你拉入羣。
<p align="center">
<img src="https://tikazyq.oss-cn-beijing.aliyuncs.com/artipub/wechat-group.jpg" height="360"> <img src="https://tikazyq.oss-cn-beijing.aliyuncs.com/artipub/wechat-profile.jpg" height="360">
</p>
本篇文章由一文多發平臺ArtiPub自動發佈