From 2665a6dae8e0378955950b56c236d0dd5606cd7a Mon Sep 17 00:00:00 2001 From: Akshay S Dinesh Date: Sun, 11 Jan 2015 17:50:02 +0530 Subject: [PATCH] google search --- plugins/google.lua | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 plugins/google.lua diff --git a/plugins/google.lua b/plugins/google.lua new file mode 100644 index 0000000..792131e --- /dev/null +++ b/plugins/google.lua @@ -0,0 +1,38 @@ +function googlethat(query) + local api = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&" + local parameters = "q=".. (URL.escape(query) or "") + + -- Do the request + local res, code = https.request(api..parameters) + if code ~=200 then return nil end + local data = json:decode(res) + local results={} + for key,result in ipairs(data.responseData.results) do + table.insert(results,{result.titleNoFormatting, result.url}) + end + return results +end + +function stringlinks(results) + local stringresults="" + for key,val in ipairs(results) do + stringresults=stringresults..val[1].." - "..val[2].."\n" + end + return stringresults +end + +function run(msg, matches) + vardump(matches) + local results = googlethat(matches[1]) + return stringlinks(results) +end + +return { + description = "Searches Google", + usage = "!google terms", + patterns = { + "^!google (.*)$", + "^.[g|G]oogle (.*)$" + }, + run = run +}