关于 nodejs 的东西?
Something about nodejs?
(async () => {
const browser = await puppeteer.launch({headless:false})
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
});
return infor;
});
console.log(model);
嗨,我需要一些帮助!!
我做了一个项目,但我不知道如何导出 excel ??有人知道怎么导出吗??
我做了研究,但我仍然没有在 google 中找到任何有用的东西。我希望我能在这里找到它:D
p/s: 我的英语不是我的母语。谢谢你的时间!!
const puppeteer = require('puppeteer');
const fs = require('fs');
var csvWriter = require('csv-write-stream');
var writer = csvWriter({sendHeaders: false});
var xuat = "xuat.csv";
(async () => {
const browser = await puppeteer.launch({headless:false})
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
});
return infor;
});
console.log(model);
await browser.close();
})();
嗨,我需要一些帮助!!
我做了一个项目,但我不知道如何导出 excel ??有人知道怎么导出吗??
我做了研究,但我仍然没有在 google 中找到任何有用的东西。我希望我能在这里找到它:D
p/s: 我的英语不是我的母语。谢谢你的时间!!
如果你想写入一个 excel 文件你可以使用 excel4node, based on the code you have posted you're writing to a csv file using csv-write-stream,我已经添加了这两个函数,检查一下
const puppeteer = require('puppeteer');
const fs = require('fs');
var csvWriter = require('csv-write-stream');
var writer = csvWriter({ sendHeaders: false });
var xuat = "xuat.csv";
// Require excel library
var excel = require('excel4node');
// writing to xlsx
function exportToExcel(data) {
// Create a new instance of a Workbook class
var workbook = new excel.Workbook();
// Add Worksheets to the workbook
var worksheet = workbook.addWorksheet('Sheet 1');
const headings = ['Name', 'Price', 'Gift', 'Gift2', 'Gift3', 'Gift4', 'Gift5', 'Gift6', 'Gift7'];;
// Writing from cell A1 to I1
headings.forEach((heading, index) => {
worksheet.cell(1, index + 1).string(heading);
})
// Writing from cell A2 to I2 , A3 to I3, .....
data.forEach((item, index) => {
worksheet.cell(index + 2, 1).string(item.Name);
worksheet.cell(index + 2, 2).string(item.Price);
worksheet.cell(index + 2, 3).string(item.Gift);
worksheet.cell(index + 2, 4).string(item.Gift2);
worksheet.cell(index + 2, 5).string(item.Gift3);
worksheet.cell(index + 2, 6).string(item.Gift4);
worksheet.cell(index + 2, 7).string(item.Gift5);
worksheet.cell(index + 2, 8).string(item.Gift6);
worksheet.cell(index + 2, 9).string(item.Gift7);
});
workbook.write('Excel.xlsx');
}
// writing to csv
function exportToCSV(data) {
writer.pipe(fs.createWriteStream(xuat))
// writing the headings to the first row
const firstRow = ['Name', 'Price', 'Gift', 'Gift2', 'Gift3', 'Gift4', 'Gift5', 'Gift6', 'Gift7'];
writer.write(firstRow);
// writing the values from the second row
data.forEach((item, index) => {
writer.write(item);
});
writer.end()
}
(async () => {
const browser = await puppeteer.launch({ headless: false })
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
}); return infor;
});
console.log(model);
exportToExcel(model);
exportToCSV(model);
await browser.close();
})();
(async () => {
const browser = await puppeteer.launch({headless:false})
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
});
return infor;
});
console.log(model);
嗨,我需要一些帮助!! 我做了一个项目,但我不知道如何导出 excel ??有人知道怎么导出吗?? 我做了研究,但我仍然没有在 google 中找到任何有用的东西。我希望我能在这里找到它:D p/s: 我的英语不是我的母语。谢谢你的时间!!
const puppeteer = require('puppeteer');
const fs = require('fs');
var csvWriter = require('csv-write-stream');
var writer = csvWriter({sendHeaders: false});
var xuat = "xuat.csv";
(async () => {
const browser = await puppeteer.launch({headless:false})
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
});
return infor;
});
console.log(model);
await browser.close();
})();
嗨,我需要一些帮助!! 我做了一个项目,但我不知道如何导出 excel ??有人知道怎么导出吗?? 我做了研究,但我仍然没有在 google 中找到任何有用的东西。我希望我能在这里找到它:D p/s: 我的英语不是我的母语。谢谢你的时间!!
如果你想写入一个 excel 文件你可以使用 excel4node, based on the code you have posted you're writing to a csv file using csv-write-stream,我已经添加了这两个函数,检查一下
const puppeteer = require('puppeteer');
const fs = require('fs');
var csvWriter = require('csv-write-stream');
var writer = csvWriter({ sendHeaders: false });
var xuat = "xuat.csv";
// Require excel library
var excel = require('excel4node');
// writing to xlsx
function exportToExcel(data) {
// Create a new instance of a Workbook class
var workbook = new excel.Workbook();
// Add Worksheets to the workbook
var worksheet = workbook.addWorksheet('Sheet 1');
const headings = ['Name', 'Price', 'Gift', 'Gift2', 'Gift3', 'Gift4', 'Gift5', 'Gift6', 'Gift7'];;
// Writing from cell A1 to I1
headings.forEach((heading, index) => {
worksheet.cell(1, index + 1).string(heading);
})
// Writing from cell A2 to I2 , A3 to I3, .....
data.forEach((item, index) => {
worksheet.cell(index + 2, 1).string(item.Name);
worksheet.cell(index + 2, 2).string(item.Price);
worksheet.cell(index + 2, 3).string(item.Gift);
worksheet.cell(index + 2, 4).string(item.Gift2);
worksheet.cell(index + 2, 5).string(item.Gift3);
worksheet.cell(index + 2, 6).string(item.Gift4);
worksheet.cell(index + 2, 7).string(item.Gift5);
worksheet.cell(index + 2, 8).string(item.Gift6);
worksheet.cell(index + 2, 9).string(item.Gift7);
});
workbook.write('Excel.xlsx');
}
// writing to csv
function exportToCSV(data) {
writer.pipe(fs.createWriteStream(xuat))
// writing the headings to the first row
const firstRow = ['Name', 'Price', 'Gift', 'Gift2', 'Gift3', 'Gift4', 'Gift5', 'Gift6', 'Gift7'];
writer.write(firstRow);
// writing the values from the second row
data.forEach((item, index) => {
writer.write(item);
});
writer.end()
}
(async () => {
const browser = await puppeteer.launch({ headless: false })
const page = await browser.newPage()
await page.goto("https://www.nguyenkim.com/tv-qled-samsung-65-inch-qa65q65rakxxv.html")
const model = await page.evaluate(() => {
let location = document.querySelectorAll(".bg-Pro")
let name = document.querySelector(".product_info_name")
let price = document.querySelector(".nk-price-final")
let gift = document.querySelector(".cm-picker-product-options div:first-child")
let gift2 = document.querySelector(".cm-picker-product-options div:nth-child(2)")
let gift3 = document.querySelector(".cm-picker-product-options div:nth-child(3)")
let gift4 = document.querySelector(".cm-picker-product-options div:nth-child(4)")
let gift5 = document.querySelector(".cm-picker-product-options div:nth-child(5)")
let gift6 = document.querySelector(".cm-picker-product-options div:nth-child(6)")
let gift7 = document.querySelector(".cm-picker-product-options div:nth-child(7)")
let infor = []
location.forEach((item) => {
infor.push({
Name: name.innerText,
Price: price.innerText,
Gift: gift.innerText,
Gift2: gift2.innerText,
Gift3: gift3.innerText,
Gift4: gift4.innerText,
Gift5: gift5.innerText,
Gift6: gift6.innerText,
Gift7: gift7.innerText
});
}); return infor;
});
console.log(model);
exportToExcel(model);
exportToCSV(model);
await browser.close();
})();