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]