关于node.js:vscode韭菜盒子批量导入股票自选

3次阅读

共计 1216 个字符,预计需要花费 4 分钟才能阅读完成。

1. 由来

下班不摸鱼还叫下班吗,一天不盯盘就浑身不得劲,然而也不能一天到晚抱着个手机。
经共事举荐,应用了 vscode 的韭菜盒子,的确是个好货色
呃,找了半天,怎么没有批量导入自选的性能,难道要我手动把一百多个自选增加到韭菜盒子里吗 …
还是得想个主动批量导入的办法

2. 过程

2.1 大体思路

1. 先从西方财产导出自选股 csv 文件
2. 写个 node 脚本解决 csv 文件
3. 导入到韭菜盒子的配置文件中

2.2 导出

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

2.3 解决

  • 在 excel 外面关上,把所有数据粘贴进去
  • 在这个网站先把数据转换成 jsonCSV 转 JSON
  • 而后就发现 json 不能用呀 如同不是很规范

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

  • 写个 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 外面的货色,复制到韭菜盒子的配置文件中即可

3. 遇到的问题

次要有两个问题

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

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

2. 增加完配置,还会有个别股票辨认不进去()not supprot
咱们须要手动删除
可能的起因就是 有可能是港股 咱们按正则增加错了前缀 比方腾讯
还有的起因就是 没啥起因 就是 bug 比方上面截图的这个 etf
必须把不反对的删除掉(右键单击 删除股票)韭菜盒子能力失常应用

4. 总结

node 没白学 又能欢快的摸鱼了 …
心愿今天能反弹,再跌只能天台见了 …

正文完
 0