我使用 Visual Studio Code,我想打印所有数组数据,但它只显示...更多项目消息。有什么方法可以显示这一切吗?我在 stackoverflow 上搜索但找不到解决方案。
我使用默认的 cmd 终端,它与 Node.js 一起运行
我正在使用 Node.js 和 Google Puppeteer 开发网络屏幕截图应用程序。现在我必须捕获 38000 页,大部分功能都可以找到,但在某些方面有错误,我不知道错误来自哪里。
我有两个假设。首先,我使用 headless 选项来检查问题,我发现有些页面有很多 GIF 文件,因此加载时间过长,因此显示超时错误。其次,网站有时会加载失败,因此会显示错误。
这是我的完整代码
const puppeteer = require("puppeteer");
const fs = require('fs');
let galleryName = "frozen"; // Enter gallery name
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
// Adjustments particular to this page to ensure we hit desktop breakpoint.
page.setViewport({
width: 1000,
height: 10000000,
deviceScaleFactor: 1
});
fs.readFile('db.txt', async function (err, data) {
if (err) throw err;
let array = data.toString().split("\n");
for (i …Run Code Online (Sandbox Code Playgroud) 我使用 Express.js 和 Socket.io 来开发聊天应用程序。
第一次我使用 Express-Generator 创建项目并从节点 ./bin/www 脚本开始,但是,我删除了所有 ./bin/www 文件并与 app.js 合并
我在生产模式中使用 HTTPS,在开发模式中使用 HTTP。
所以我写了这样的代码。
[应用程序.js]
require('dotenv').config()
const express = require('express');
const path = require('path');
const fs = require('fs')
const app = express();
let io = require('socket.io')(app) // I Attach (app) here!!
const https = require('https')
const http = require('http')
const PORT = process.env.PORT || 443;
const domain = 'example.com';
const option = process.env.NODE_ENV === "production" ? {
ca: fs.readFileSync('/etc/letsencrypt/live/' + domain + '/fullchain.pem'),
key: fs.readFileSync(path.resolve(process.cwd(), '/etc/letsencrypt/live/' …Run Code Online (Sandbox Code Playgroud) 我想用 puppeteer 截取一张屏幕截图,它适用于一篇文章。但我想让它迭代。
如果它是普通函数,我可以将函数名称写在代码的最后一侧,以便它可以迭代。但这是异步函数,所以我不知道如何迭代它。
const puppeteer = require('puppeteer');
let postNumber = 1;
let by;
(async () => {
const browser = await puppeteer.launch({
executablePath: 'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe',
userDataDir: 'C:\\Users\\{computerName}\\AppData\\Local\\Google\\Chrome\\User Data',
headless: false
}); // default is true
const page = await browser.newPage();
await page.goto(`https://band.us/band/{someNumbers}/post/${postNumber}`, {
waitUntil: 'networkidle2'
});
let element = await page.$('.boardList');
by = await page.evaluate(() => document.getElementsByClassName('text')[0].textContent);
console.log(by);
await element.screenshot({
path: `./image/${postNumber}-${by}.png`
});
console.log(`SAVED : ${postNumber}-${by}.png`)
postNumber++;
await browser.close();
})();
Run Code Online (Sandbox Code Playgroud)
函数完成后,postNumber 变量应该加一。然后通过新的 URL 再次运行代码。
我正在开发一个网络捕获应用程序,似乎所有功能都是异步的,但控制台向我显示了一个SyntaxError: await is only valid in async function错误。
我试图将所有功能更改为异步,但似乎仍然无法正常工作。是因为 fs 模块的错误吗?我认为当我在另一个应用程序中尝试不使用 fs 模块时,它确实有效。
这是我的完整代码
const puppeteer = require("puppeteer");
const fs = require('fs');
let galleryName = "frozen"; // Enter gallery name
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
// Adjustments particular to this page to ensure we hit desktop breakpoint.
page.setViewport({
width: 1000,
height: 10000,
deviceScaleFactor: 1
});
fs.readFile('db.txt', function (err, data) {
if (err) throw err;
let array = data.toString().split("\n");
for …Run Code Online (Sandbox Code Playgroud) javascript ×4
node.js ×4
puppeteer ×2
async-await ×1
asynchronous ×1
express ×1
socket.io ×1
terminal ×1