general-search-engine
Version:
This module will allow you to search for modules in npm, images in google, repos in github... without any API KEY GENERAL-SEARCH-ENGINE
29 lines (23 loc) • 1.25 kB
JavaScript
const functions = require("../functions.js")
const DomParser= require('dom-parser');
var parser = new DomParser();
let url = "https://www.google.com/search?q={QUERY}&ie=UTF-8&oe=UTF-8"
module.exports = {
type: "search",
execute: async (query, options) => {
//Request code and format it to obtain a different code per package
var search_code = functions.parseHtml(await functions.requestCode(url.replace(/{QUERY}/g, query)), "ZINbbc").filter(item => {if(item.attributes[0].value == "ZINbbc xpd O9g5cc uUPGi" && /^<div class="kCrYT"><a/.test(item.innerHTML)){return true} else {return false}}).map(item => item = item.innerHTML)
if(search_code.length == 0){
throw(`[PAGE NOT FOUND]`)
}
var search_array = search_code.map(item =>{
var dom = parser.parseFromString(item)
return {
title: dom.getElementsByClassName("BNeawe")[0].innerHTML,
link: dom.getElementsByTagName("a")[0].attributes[0].value.replace(/\/url\?q=/, ""),
description: dom.getElementsByClassName("s3v9rd")[0].innerHTML.replace(/<[^>]*>/g, "").replace(/ +/g, ' ')
}
})
return search_array
}
}