84 lines
3.3 KiB
JavaScript
84 lines
3.3 KiB
JavaScript
const puppeteer = require("puppeteer");
|
|
const zulip = require("zulip-js");
|
|
const moment = require("moment");
|
|
const { addLogFunction } = require("./addLogFunctionJS");
|
|
|
|
(async () => {
|
|
// Launch a headless browser
|
|
const browser = await puppeteer.launch({
|
|
headless: true,
|
|
args: ["--no-sandbox"],
|
|
});
|
|
const config = {
|
|
username: "networktool-bot@zulip.ipsupply.com.au",
|
|
apiKey: "0jMAmOuhfLvBqKJikv5oAkyNM4RIEoAM",
|
|
realm: "https://zulip.ipsupply.com.au",
|
|
};
|
|
const client = await zulip(config);
|
|
const page = await browser.newPage();
|
|
|
|
await page.goto("https://www.cskh.evnspc.vn/TraCuu/LichNgungGiamCungCapDien");
|
|
|
|
const selectBoxSelector1 = "select#idCongTyDienLuc";
|
|
await page.waitForSelector(selectBoxSelector1);
|
|
await page.select(selectBoxSelector1, "PB11");
|
|
|
|
// In ra nội dung của trang mới
|
|
setTimeout(async () => {
|
|
const htmlContent = await page.evaluate(() => {
|
|
// const tbody = document.querySelector("tbody"); // Lựa chọn thẻ <tbody> cần trích xuất
|
|
// const rows = tbody.querySelectorAll("tr"); // Lựa chọn tất cả các hàng (thẻ <tr>) bên trong thẻ <tbody>
|
|
|
|
// // Lặp qua từng hàng và lấy nội dung của các cột (thẻ <td>) trong hàng
|
|
// const data = [];
|
|
|
|
// rows.forEach((row) => {
|
|
// const columns = Array.from(row.querySelectorAll("td")); // Lựa chọn tất cả các cột (thẻ <td>) trong hàng
|
|
// const rowData = columns.map((column) => column.textContent.trim()); // Lấy nội dung của các cột và xóa khoảng trắng
|
|
// data.push(rowData); // Thêm dữ liệu của hàng vào mảng data
|
|
// });
|
|
|
|
const htmlContent = document.querySelector('.notification').outerHTML
|
|
return htmlContent || "";
|
|
});
|
|
var TurndownService = require('turndown')
|
|
const turndownService = new TurndownService();
|
|
const markdown = turndownService.turndown(htmlContent);
|
|
await browser.close();
|
|
let params = {
|
|
type: "stream",
|
|
to: "networkToolBot",
|
|
topic: "powerSchedule",
|
|
content:
|
|
`:warning: <time:${(new Date()).toDateString()}> :warning:\n\n ${markdown.replaceAll('KDC 91B', ':warning:KDC 91B:warning:').replaceAll('B31', ':warning:B31:warning:')}\n-------`,
|
|
};
|
|
client.messages.send(params);
|
|
let checkTime = moment(Date.now()).format("DD_MM_YYYY").toString()
|
|
// if (
|
|
// markdown.filter((i) => (i.includes("KDC 91B") || i.includes("KDC91B")) && i.includes(checkTime))
|
|
// .length > 0
|
|
// ) {
|
|
|
|
// let params = {
|
|
// type: "stream",
|
|
// to: "Cục tình báo",
|
|
// topic: "Thông báo chung",
|
|
// content:
|
|
// ":warning: :date: :warning:\n\n" +
|
|
// markdown
|
|
// .filter((i) => i.includes("KDC 91B") || i.includes("KDC91B"))[0]
|
|
// .replace(/KDC 91B/g, "**KDC 91B**") +
|
|
// "\n-------",
|
|
// };
|
|
// client.messages.send(params);
|
|
// }
|
|
const fileName =
|
|
"/home/Log_service/app/store/logsAPI/" +
|
|
moment(Date.now()).format("DD_MM_YYYY").toString() +
|
|
".log";
|
|
|
|
addLogFunction(fileName, JSON.stringify(params, null, 2), "powerSchedule")
|
|
}, 5000);
|
|
|
|
})();
|