繁体   English   中英

如何为 Google 图片 Discord js 制作数组?

[英]How to make an Array for Google Images Discord js?

const request = require('request');
const cheerio = require('cheerio');
const Discord = require('discord.js');

const client = new Discord.Client();
const token = ' .....';
const prefix = '-';

client.login(token);

client.on('message', (message) => {
 const image2 = message.content.slice(1);
 let args = message.content.substring(prefix.length).split(' ');

 switch (args[0]) {
  case 'random':
   image(message);
   break;
 }
});

function image(message) {
 const image2 = message.content.slice(7);

 var options = {
  url: 'http://results.dogpile.com/serp?qc=images&q=' + image2,
  method: 'GET',
  headers: {
   Accept: 'text/html',
   'User-Agent': 'Chrome',
  },
 };

 if (!image2)
  var options = {
   url: 'http://www.google.com/images?q=' + 'cursed+images',
   method: 'GET',
   headers: {
    Accept: 'text/html',
    'User-Agent': 'Chrome',
   },
  };

 request(options, function(error, response, responseBody) {
  if (error) {
   return;
  }

  $ = cheerio.load(responseBody);

  var links = $('.image a.link');

  var urls = new Array(links.length)
   .fill(0)
   .map((v, i) => links.eq(i).attr('href'));

  console.log(urls);

  if (!urls.length) {
   return;
  }

  // Send result
  message.channel.send(urls[Math.floor(Math.random() * urls.length)]);
 });
}

好的,所以我试图让我的机器人不和谐地显示随机搜索的图像,获取“results.dogpile.com”数组的功能工作示例:-image dog(我从选择随机链接中获得狗图像来自 result.dogpile.com 的数组

如果我尝试:-image(它不显示任何内容,因为该数组是为 results.dogpile 制作的,而不是为 google 图像用户界面制作的)

问题是......我应该如何为谷歌图像制作数组以从搜索中获取随机图像?

我不相信这是可能的,问题在于您需要为自己设置一个数据库,其中包含您想要的所有当前谷歌图像,因为机器人在连接到网络进行浏览时往往会经常挣扎,我建议你寻找一个不同于你的狗堆东西的依赖。 不过我会澄清一下,我不是专业人士,所以请不要过多接受我的建议,这只是我个人的建议:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM