vscode韭菜盒子批量导入股票自选

1.由来

上班不摸鱼还叫上班吗,一天不盯盘就浑身不得劲,但是也不能一天到晚抱着个手机。
经同事推荐,使用了vscode的韭菜盒子,确实是个好东西
呃,找了半天,怎么没有批量导入自选的功能,难道要我手动把一百多个自选添加到韭菜盒子里吗...
还是得想个自动批量导入的方法

2.过程

2.1大体思路

1.先从东方财富导出自选股csv文件
2.写个node脚本处理csv文件
3.导入到韭菜盒子的配置文件中

2.2导出

东财app右键点击导出所有自选文件为csv
image.png

2.3处理

  • 在excel里面打开,把所有数据粘贴出来
  • 在这个网站先把数据转换成jsonCSV转JSON
  • 然后就发现json不能用呀 好像不是很标准

image

  • 没事建个txt文件,我们直接读文本,把它写成这种一行一行的

image.png

  • 写个node脚本 一行一行的读,把股票代码读出来
const fs = require('fs')
const readline = require('readline');
const fileStream = fs.createReadStream('./1.txt');
const outStream = fs.createWriteStream('./2.txt');
const rl = readline.createInterface({
    input: fileStream,
    output: outStream,
});

// 逐行读取
rl.on('line', (lineData) => {
    if (!lineData) {
        return
    }
    const code = lineData.split(',')[1].split(':')[1]
    let _code = code.slice(2,-1)
    let regsz = /^(0|3|1)/
    let regsh = /^(6)/
    if(regsz.test(_code)) { //专门按韭菜盒子的要求,添加前缀
        _code = `sz${_code}`
        outStream.write(`"${_code}",\n`)
    }else if(regsh.test(_code)){
        _code = `sh${_code}`
        outStream.write(`"${_code}",\n`)
    }else{
        return  
    }

})
// 监听读取完成
rl.on('close', () => {
    console.log('end')
})

2.4导入

拿到2.txt里面的东西,复制到韭菜盒子的配置文件中即可
image.png

3.遇到的问题

主要有两个问题

  1. 韭菜盒子给代码加了前缀(可能是券商api的要求),深圳股价的前缀sz 上海股加的前缀sh

我们专门写了一个正则去做这件事

2.添加完配置,还会有个别股票识别不出来()not supprot
我们需要手动删除
可能的原因就是 有可能是港股 我们按正则添加错了前缀 比如腾讯
还有的原因就是 没啥原因 就是bug 比如下面截图的这个etf
必须把不支持的删除掉(右键单击 删除股票) 韭菜盒子才能正常使用
QQ20210223-180928.png

4.总结

node没白学 又能愉快的摸鱼了...
希望明天能反弹,再跌只能天台见了...

你可能感兴趣的:(node.js股票)