小编wri*_*per的帖子

使用 Visual Studio Code 打印完整数组项

在此输入图像描述

我使用 Visual Studio Code,我想打印所有数组数据,但它只显示...更多项目消息。有什么方法可以显示这一切吗?我在 stackoverflow 上搜索但找不到解决方案。

我使用默认的 cmd 终端,它与 Node.js 一起运行

terminal visual-studio-code

4
推荐指数
1
解决办法
1万
查看次数

Puppeteer TimeoutError:超过 30000 毫秒的导航超时

我正在使用 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)

javascript node.js puppeteer

4
推荐指数
1
解决办法
7959
查看次数

如何在 Expressjs 和 Socket.io 上连接同一端口

我使用 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)

javascript node.js express socket.io

3
推荐指数
1
解决办法
2796
查看次数

如何使用 NodeJS 迭代 puppeteer 中的异步函数

我想用 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 再次运行代码。

javascript node.js async-await puppeteer

2
推荐指数
1
解决办法
6998
查看次数

Await 仅在 nodejs 的异步函数中有效

我正在开发一个网络捕获应用程序,似乎所有功能都是异步的,但控制台向我显示了一个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 asynchronous node.js

2
推荐指数
1
解决办法
2156
查看次数