标签:mamicode child fs模块 模块 展示 数据 ima nbsp 可视化
这段时间在忙着写一个web端3D可视化编辑的项目(其实也只是有空闲并且心血来潮的时候才会去写的)和其他个人爱好相关的事情;
so,看一下目前项目进度的相关截图:
其实就是将echarts的配置图形化,目前暂且写了4个组件。
然后,上个礼拜发现余额宝的收益已经跌破2%了,于是抱着玩玩的心态连夜找了一只基金(买得少),两天下来,居然涨了100来块钱,感觉就像是捡到??了。
于是趁着周末的时间,用puppeteer+electron写了个分析软件。
1.基金公司列表
2.基金公司的基金列表
3.指定基金历年收益情况
4.自助选股
其中,自助选股可以根据指定的上涨率参数(这个数据是我个人对基金历史走势计算出来的测评数据值),来对指定基金源(这里选取了150+基金公司中评级在5星的公司的所有基金,4021只基金)进行筛选;
我筛选了一次,上涨率指定为0.7的话,4021只基金里面大概能筛选出200只基金;
然后点击筛选出来的基金,可以进一步看到该基金的历史收益趋势图,进行进一步的人为主观筛选。
当然了,4021只基金数据由于是实时线上爬取的,所以在单线程的情况下大概要1个小时,开了4个线程跑的时候电脑温度直逼90℃,1分钟能跑将近200个基金,但是到后面就慢了下来,应该是网站那边做了限制?没深究,然后又换回单线程去跑了。
技术细节:
1.在拿指定基金历年收益情况数据的时候,发现网站采用的是jsonp,直接调用会有限制,于是在puppeteer里做了模拟点击,并且对请求做了拦截处理,从而获取指定请求的响应内容,然后就是对jsonp请求响应内容转json的处理。
2.数据存储方面,node脚本用的是fs模块,h5页面用的是Blob对象和file-saver库,将抓取的数据转json存储本地。
3.利用node的child_process模块相关函数(execFile、exec)执行js脚本。
4.electron的ipcMain和ipcRenderer之间的数据通信,主要用于将主进程中node执行的爬虫脚本结果发送给渲染进程(h5页面)用于数据展示。
标签:mamicode child fs模块 模块 展示 数据 ima nbsp 可视化
原文地址:https://www.cnblogs.com/eco-just/p/12735046.html