#javascript #node.js #discord #discord.js #puppeteer
Вопрос:
Я пытаюсь сделать скриншот с помощью puppeteer и отправить его обратно в канал, где была набрана команда. В любом случае, я не могу этого сделать, поэтому, пожалуйста, помогите мне.
const Discord = require("discord.js");
const fetch = require('node-fetch');
const cheerio = require("cheerio");
const puppeteer = require('puppeteer');
const client = new Discord.Client();
module.exports = {
async run(client, message, args) {
const browser = await puppeteer.launch();
const url = message.client;
const page = await browser.newPage();
await page.goto(url);
console.log(await page.content());
await page.screenshot({path: 'screenshot.png'});
let screenshot = await page.screenshot();
await browser.close();
message.channel.send("Screenshot", {files: [screenshot]});
}
}
Ответ №1:
Похоже, вы, возможно, допустили опечатку.
const url = message.client;
вероятно, должно быть
const url = message.content; // or something similar?
message.client
является Client
объектом, и даже в виде строки, является [object Object]
. Это недопустимые URL-адреса.
В результате UnhandledPromiseRejectionWarning
в консоль должен был войти файл, в котором указывалось, что URL-адрес не может быть десериализован.
Вы должны проверить URL-адрес или обнаружить ошибки в вашей команде в случае недопустимых URL-адресов.
Комментарии:
1. Спасибо, я постараюсь.