Permalink
271569f May 7, 2016
@technicalpickles @tombell @searls @plytro
26 lines (23 sloc) 628 Bytes
# Description:
# Returns the URL of the first google hit for a query
#
# Dependencies:
# None
#
# Configuration:
# None
#
# Commands:
# hubot google me <query> - Googles <query> & returns 1st result's URL
#
# Author:
# searls
module.exports = (robot) ->
robot.respond /(google)( me)? (.*)/i, (msg) ->
googleMe msg, msg.match[3], (url) ->
msg.send url
googleMe = (msg, query, cb) ->
msg.http('http://www.google.com/search')
.query(q: query)
.get() (err, res, body) ->
cb body.match(/class="r"><a href="\/url\?q=([^"]*)(&amp;sa.*)">/)?[1] || "Sorry, Google had zero results for '#{query}'"