问题标签 [csvtojson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
402 浏览

node.js - CSV 到 Cloudant 导入大型数据集

我正在研究基于 Nodejs 的脚本,以将大型 csv 文件导入 ibm cloudant 数据库。我对这个脚本的方法如下:

  • Script1:使用 FTP 连接从远程服务器下载 ZIP 文件。
  • Script1:遍历下载的 zip 文件并从中提取 CSV 文件。
  • 脚本 1:使用文件读写流将每个 CSV 文件上传到 AWS S3 存储桶。
  • 脚本 2:连接到 S3 存储桶并遍历在特定存储桶位置找到的每个 CSV 文件。
  • Script2:使用流读取 CSV 文件并通过管道将其转换为 JSON 格式的 CSV 数据。
  • 脚本 2:连接到 IBM cloudant 数据库。
  • 脚本 2:通过发出 GET 请求,对现有的 Cloudant 文档逐一检查每个 JSON 对象。
  • 脚本 2:如果找到文档,则使用 JSON 对象进行更新,否则将条目作为新文档创建到 cloudant 中,并具有单独的 API 请求。
  • 脚本 2:如果所有 CSV 数据都成功迁移到 cloudant 数据库,则从 S3 存储桶中删除 CSV 文件。

到目前为止有效的方法:

  • 从 FTP 下载 ZIP 文件 从 ZIP 中提取 CSV 文件并将其上传到 S3 存储桶。
  • 如果我们只是在终端上打印每个转换的 JSON 对象,则将 CSV 文件作为流读取并使用 npm 包“csvtojson”将其转换为 JSON 对象就像魅力一样。
  • 与 IBM Cloudant 数据库的连接成功。

面临的问题:

  • 在一个循环中,试图为每个 JSON 对象检查 cloudant 中的现有记录,它只是不会超出少数记录并最终出现与内存/堆相关的错误,而且它还存在 cloudant 速率限制问题,随着查找速度很快就会饱和并且导入操作发生在循环内。

确切的错误:

  • 致命错误:堆限制附近的无效标记压缩分配失败 - JavaScript 堆内存不足。
  • IBM Cloudant 上的请求过多。

笔记:

  • FTP 服务器上可能会有多个 ZIP 文件。
  • ZIP 文件中可能会有多个 CSV 文件。
  • 我一直在尝试导入的 CSV 文件之一包含大约 130 万条记录,文件大小约为 300MB。
  • 对于此要求,我无法考虑增加 IBM Cloudant 的速率限制。

有人可以建议最好的方法来解决这个要求而不会遇到我上面提到的问题吗?任何解决此要求的替代 npm 包也是最受欢迎的。任何改变我的开发方法的建议也很受欢迎。

0 投票
3 回答
2030 浏览

javascript - 从 URL 获取 CSV 文件并转换为 JSON 数组

我需要从托管在 url 上的 csv 文件中获取数据并将其转换为 json 数组。直到现在我都在使用这个。

我曾尝试先转换为 base64,然后解码字符串,但它只是给了我如下所示的字符串。

我需要它作为一个 json 数组。

0 投票
0 回答
147 浏览

javascript - 如何将 CSV 中的 http.get 响应转换为 JSON NodeJS

http.get 请求返回 csv.gz 文件。解压后我想将其转换为 JSON 并上传到 mongoDB 如何在流上实现转换功能?

我的代码如下:

CSV 到 JSON 将使用它进行转换:

调用代码如下:

另外,为什么 nodemon 会重启几次? 控制台的打印屏幕

在此先感谢您的帮助

0 投票
1 回答
29 浏览

node.js - 使用 UTF-8 CSV(英文和中文字符)的子属性创建 JSON 数组的最佳方法是什么?

我尝试使用csvtojson模块创建 GeoJSON 格式的文件,但嵌套根本无法正常工作。谁能指出我正确的方向还是我需要编写自己的代码?

输入.tsv

我想要的是

我得到了什么:

0 投票
0 回答
23 浏览

javascript - 如何将 csv 文件转换为节点中的对象?

我一直在尝试使用 nodejs 包'csvtojson',我可以返回数据的控制台日志,但我似乎无法弄清楚如何将它存储在变量/对象中。npmjs.comGitHub 页面上的文档非常简短,只展示了一种使用方式。

稍后我试图在我的 js 文件中对这些数据做更多的事情,所以我需要它在一个对象中。

到目前为止,我有:

0 投票
0 回答
307 浏览

node.js - 如何在 Nodejs 中以特定格式从 CSV 读取日期?

我正在尝试使用 csvtojson 模块读取文件。日期字段被读取为 "05-23-2020" & 下一个日期是 "23-03-2020" 。我应该使用的格式是 dd-mm-yyyy。但是如果我尝试使用以下日期“23-03-2020”转换在后端

我得到了无效的日期。但是对于这个日期 "05-23-2020" ,我可以获得价值。

我该如何解决这个问题?New Date 将只接受 mm-dd-yyyy 格式的日期字符串。谁能帮我解决这个问题?

0 投票
2 回答
183 浏览

javascript - CSVtoJSON 返回 UnhandledPromiseRejectionWarning: ReferenceError: JavaScript

我正在尝试将 CSV 从 CSV 文件转换为 JSON。

我有以下代码

当我运行它时,我得到 UnhandledPromiseRejectionWarning: ReferenceError: latest_provinces_confirmed is not defined

如何将 CSVtoJSON 的结果放入变量中以供以后使用

提前致谢

0 投票
1 回答
97 浏览

r - 从数据框在 R 中创建嵌套的键/值对

我第一次尝试将 csv 转换为 JSON 格式。当 csv 被读入 R 时,它的数据帧格式如下:

理想情况下,我想遍历数据框,找到三列的唯一组合,并将 JSON 的键/值对分成以下内容:

我只能想办法在 python 中实现这一点,但我在 R 中执行它时遇到了困难。关于如何开始这个有什么建议吗?

0 投票
1 回答
712 浏览

node.js - 当以具有不同 mimetype 的一种形式上传多个文件时,如何将我的 CSV 转换为 JSON 并将其保存到 MongoDB?

我正在尝试将包含图像上传和 CSV 上传的表单保存到我的 MongoDB。我正在使用 Node 模块 Multer 和 CSVtoJSON 来完成此任务。我已经能够自己完成每项任务,但正在努力让它们以相同的形式保存到数据库中。经过无数次尝试后,代码目前没有抛出任何错误,我只是在浏览器中得到“Cannot POST /”。这些文件已正确保存到我的上传文件夹中。我相信失败是我在创建数据库条目之前将文件转换为 JSON 的逻辑。

这是我的 app.js 文件:

这是我的架构的简化版本:

这是我的 app.ejs 文件:

这是我的 package.json 文件:

任何可以提供的帮助将不胜感激。我对任何和所有建议持开放态度——即使这意味着完全不同的方法,只要它更有效。

0 投票
0 回答
34 浏览

kotlin - 重载分辨率歧义 - Kotlin

问题在于fortype()行中的功能var mappingIterator: MappingIterator<Map<String, String>> = csvMapper.reader().forType(Map.class).with(csv).readValues(input)