CoolFace
Apppublic

asrt/Auto-keep-online

sourceHugging Faceupdated 3y agoView on Hugging Face
0likes
index.js78 linesDownload Raw Back to root
1const axios = require('axios');2const fs = require('fs');3const cron = require('node-cron');4const http = require('http');5const path = require('path');6const port = process.env.PORT || 7860;7 8// 定义要访问的网页URL数组9const urls = [10  'https://www.google.com',    // 此处可备注平台名称11  'https://www.google.com',    // 此处可备注平台名称12  'https://www.google.com',    // 此处可备注平台名称13  'https://www.google.com',    // 此处可备注平台名称14  'https://www.google.com',    // 此处可备注平台名称15  'https://www.google.com',    // 此处可备注平台名称16  'https://www.google.com',    // 此处可备注平台名称17 18  // 添加更多的URL19];20 21// 创建日志文件22//const logFile = 'visit-log.txt';23 24// 访问网页并将结果写入日志25async function scrapeAndLog(url) {26  try {27    const response = await axios.get(url);28    const timestamp = new Date().toISOString();29    const logMessage = `${timestamp}: Web visited Successfully ${url}\n`;30 31    // 将访问结果写入日志文件32//    fs.appendFileSync(logFile, logMessage);33 34    console.log(logMessage);35  } catch (error) {36    const timestamp = new Date().toISOString();37    const errorMessage = `${timestamp}: Web visited Error ${url}: ${error.message}\n`;38 39    // 将错误信息写入日志文件40//    fs.appendFileSync(logFile, errorMessage);41 42    console.error(errorMessage);43  }44}45 46// 使用cron来安排定期任务47cron.schedule('*/2 * * * *', () => {48  console.log('Running webpage access...');49  // 循环访问每个URL50  urls.forEach((url) => {51    scrapeAndLog(url);52  });53});54 55 56const server = http.createServer((req, res) => {57    if (req.url === '/') {58        const filePath = path.join(__dirname, 'index.html');59 60        fs.readFile(filePath, (err, data) => {61            if (err) {62                res.writeHead(500);63                res.end('Error loading index.html');64            } else {65                res.writeHead(200, { 'Content-Type': 'text/html' });66                res.end(data);67            }68        });69    } else {70        res.writeHead(404);71        res.end('Not Found');72    }73});74 75server.listen(port, () => {76    console.log(`Server is running on port ${port}`);77});78