shiny搭建網站填坑戰略

在正式開始之前,我不得不吐槽一句,這是個坑,這是個坑,這是個大坑啊。

本系列主要描述的是我是如何從淘寶採集數據,對數據做預處理,再把數據進行可視化的。主要是爲了記錄和解決問題,代碼和算法方面不做過多贅述。


(一)數據採集

淘寶頁面是動態加載的,因此若想寫個什麼Python腳本之類的,本小白還真是能力不夠,項目中的數據採集主要使用軟件來進行採集(水淼軟件---一個著名的電商信息採集軟件,好像有打廣告的嫌疑(逃)),採集的內容如下圖所示

                                                             

選擇這三個字段是之前對其他字段(如評論區買家的圖片)做過很過測試,測試結果均不理想,最後分析可以從這三方面的因素直接分析,或挖掘會更簡潔明瞭。

PS:我們使用過八爪魚採集器,Python腳本,R語言腳本均可以成功採集到數據,你也可以嘗試使用別的方式。


(二)填坑開始

主要是處理一些缺失值等,從這個時候開始,問題就出現了。

問題一:Rstudio導入數據時對中文的兼容性並不是很好,此時你需要調整Rstudio的設置,如下圖

                                                                           

修改Rstudio默認的編碼方式爲UTF-8,如下圖

                                                                           


問題二:等你的APP寫好了,想上傳到網上讓別人都能看到的時候,你上傳成功要打開網頁的時候或許會發現這個錯誤:Error: 不存在叫「shinydashboard」這個名字的程輯包

這個時候Google也沒用了,在嘗試過所有辦法後,我把項目嘗試遷移到Linux下(別問我爲什麼,你試試就知道了,呵呵呵)


問題三:是的,問題又來了,遷移到Linux下之後,導入數據的時候會出現:多字節字符串有錯

                                                                                

在嘗試了N種方法未果,並且虛擬機下的Linux系統奔潰以後,我終於發現了問題出在哪裏。Windows和Linux的換行符不同,Windows下是以CR LF結尾的,而Linux下是以LF結尾的,於是你需要把下面的行尾的Windows改成Linux。問題就解決了,這下你可以成功導入數據了。

                                                                                 


問題四:等你再次把APP上傳到shinyapp.io的時候,幸運的話可能就已經大功告成了,那麼恭喜你。但如果不幸如我你可能會遇到服務器傳輸數據錯誤:disconnected from the server.

沒事,要堅強,此刻你可能需要安裝一個本地服務器了,安裝shiny-server,確認安裝好以後先把srv/shiny-server裏本來的東西刪除,然後把項目丟到/srv/shiny-server下面去,然後直接在遊覽器訪問(http://本機IP:3838)就可以了。


問題五:你以爲事情就完了麼,沒有,都告訴你是個坑了。你可能又會遇到在Windows下遇到過的問題:Error: 不存在叫「shinydashboard」這個名字的程輯包,解決如下

1、爲用戶設置密碼,在命令行輸入sudo passwd shiny,現在輸入並確認密碼

2、切換到閃亮的帳戶使用: su - shiny

3、調用R使用$ R(不帶sudo)

4、在這種情況下安裝所需的軟件包: install.packages("shinydashboard")

5、缺什麼就安裝什麼,可能不止缺shinydashboard


問題六:本地是可以訪問了,想要外網能訪問到,可以使用花生殼,經濟實惠,用法自己去找吧!


結尾:項目的源代碼及相應資源已經上傳到CSDN,下載鏈接:點擊打開鏈接

有什麼問題可以私我,畢竟被虐過千百遍,也許可以給你提供幫助也說不定。(郵箱:[email protected]