我如何将此代码生成的数据导出到操纵p的CSV文件中?
我需要将此代码生成的数据导出到CSV文件。我是node.js / puppeteer的新手,因此正在努力生成CSV文件。
我知道我可以使用fs write函数,并尝试将其添加到我的代码末尾无济于事:
const fs = require('fs');
const csv = await page.$$eval('.product_desc_txt', function(products){
// Iterate over product descriptions
let csvLines = products.map(function(product){
// Inside of each product find product SKU and its price
let productId = document.querySelector(".custom-body-copy").innerText.trim();
let productPrice = document.querySelector("span[data-wishlist-linkfee]").innerText.trim();
// Fomrat them as a csv line
return `${productId};${productPrice}`;
});
// Join all lines into one file
return csvLines.join("\n");
});
fs.writeFileSync("test.csv", csv)
});
回答如下:您已经从puppeteer那里获得了csv的数据,但是请不要使用它。只需将数据写入文件:
fs.writeFileSync("test.csv", csv);
也写此文件
'${productId};${productPrice}'
将不起作用,那个地方没有这样的变量,即使存在,将变量格式化为字符串的正确方法是使用反引号:
`${productId};${productPrice}`