I try to read a csv File from a Google Cloud Storage Bucket with Node (Google Cloud Functions).
The CSV File is zipped like this:
<code> const {google} = require('googleapis');
const {Storage} = require('@google-cloud/storage');
const {parse} = require("csv-parse");
const storage = new Storage({
projectId: 'XXX',
keyFilename: './api-project-XXX.json'
});
const file = storage.bucket('pubsite_prod_rev_XXX').file("sales/salesreport_202406.zip");
const content = await file.download({destination: "/tmp/test"}, function(err, file) {
if (err) {
console.log(err);
} else {
console.log("download successful");
}
});
</code>
<code> const {google} = require('googleapis');
const {Storage} = require('@google-cloud/storage');
const {parse} = require("csv-parse");
const storage = new Storage({
projectId: 'XXX',
keyFilename: './api-project-XXX.json'
});
const file = storage.bucket('pubsite_prod_rev_XXX').file("sales/salesreport_202406.zip");
const content = await file.download({destination: "/tmp/test"}, function(err, file) {
if (err) {
console.log(err);
} else {
console.log("download successful");
}
});
</code>
const {google} = require('googleapis');
const {Storage} = require('@google-cloud/storage');
const {parse} = require("csv-parse");
const storage = new Storage({
projectId: 'XXX',
keyFilename: './api-project-XXX.json'
});
const file = storage.bucket('pubsite_prod_rev_XXX').file("sales/salesreport_202406.zip");
const content = await file.download({destination: "/tmp/test"}, function(err, file) {
if (err) {
console.log(err);
} else {
console.log("download successful");
}
});
How could I unzip and read the CSV File? Should createReadStream be used here? Does the file have to be saved in a bucket first or can it be unzipped directly?