我正在使用Nightmare
来自动从Web服务下载用户特定的生成csv
文件,如下所示(粗略的工作流程):
.goto()
网站.insert()
凭据和.click()
登录按钮.wait()
用于加载所需的DOM元素.goto()
端点上调用export.php
,并使用其他一些参数来下载csv
文件。由于显示了Nightmare的电子窗口,因此我被要求提供存储文件的路径。目前,整体工作流程如下:
readFileSync()
将文件读入字符串data-forge-js
,pandasjs
或d3-dsv
通过将文件的内容直接传递给数据分析,我想摆脱在步骤1中保存文件并在步骤2中读取该本地文件。我不想在本地存储原始的csv
文件。由于我不想在生产后期启用Nightmares Electron Window,我正在寻找一种方法将文件的内容直接传递给数据处理函数并摆脱那些不必要的步骤。
答案 0 :(得分:0)
您可以使用window.URL对象方法来存储数据。以下检索二进制blob,但您可以使用content-types和response-types返回字符串。
xmlhttp.open('GET', PHOTO_URL, true);
xmlhttp.responseType = 'blob';
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
var blob = xmlhttp.response;
photoImg.src = window.URL.createObjectURL(blob);
setTimeout(setOnCampusImage,0);
} else {
photoImg.src = 'unknown.png';
}
}
}