Files
xiao/commands/search/image.js
T
2017-04-03 20:38:18 +00:00

49 lines
1.6 KiB
JavaScript

const commando = require('discord.js-commando');
const request = require('superagent');
const cheerio = require('cheerio');
module.exports = class ImageSearchCommand extends commando.Command {
constructor(Client) {
super(Client, {
name: 'image',
aliases: [
'searchimage',
'googleimages'
],
group: 'search',
memberName: 'image',
description: 'Searches Google for an Image. (;image Cat)',
examples: [';image Cat'],
args: [{
key: 'query',
prompt: 'What would you like to search for?',
type: 'string'
}]
});
}
async run(message, args) {
if (message.channel.type !== 'dm') {
if (!message.channel.permissionsFor(this.client.user).hasPermission(['SEND_MESSAGES', 'READ_MESSAGES'])) return;
}
console.log(`[Command] ${message.content}`);
let thingToSearch = args.query;
let searchMsg = await message.say('Searching...');
try {
let response = await request
.get('https://www.google.com/search')
.query({
tbm: 'isch',
gs_1: 'img',
q: thingToSearch
});
const $ = cheerio.load(response.text);
const result = $('.images_table').find('img').first().attr('src');
return searchMsg.edit(result);
}
catch (err) {
return searchMsg.edit(':x: Error! No Results Found!');
}
}
};