Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Node.js implementation of Google Search AJAX API using node-dom
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
test first commit
LICENSE.txt
README.md
package.json

README.md

node-googleSearch

Node.js implementation of Google Search AJAX API using https://github.com/Ayms/node-dom/

Purpose:

Server side implementation of Google Search, see https://github.com/Ayms/node-bot/ for examples of use

Install :

npm install node-googleSearch

or

git clone http://github.com/Ayms/node-googleSearch.git
cd node-googleSearch
npm link .

Use :

googlesearch.js :

As a module :

    var googleSearch = require('node-googleSearch').googleSearch;

    var $E=encodeURIComponent;

    var response={
        end:function(result) {
            console.log(result);
            //output format, see below
        }
    };

    var params='search='+$E('nikestore nike shoe')'+'&name='+$E(nike_shoes);

    googleSearch(params,response);

As a server or an API :

    var http = require('http'),  
    URL = require('url'),
    googleSearch= require('node-googleSearch').googleSearch;

    var handleRequest = function (request, response) {

        var qs = URL.parse(request.url);

        if (qs.pathname == '/googlesearch'){
            googleSearch(qs.query,response);
        };
    };

    http.createServer(handleRequest).listen(myport);

To call it directly :

http://myserver:myport/googlesearch?name=nike_shoes&search=nikestore nike shoe

Example with encoded parameters : http://213.246.53.127:1341/googlesearch?name=nike_shoes&search=nikestore%20nike%20shoe

To call it from a script :

    var xscript=document.createElement('SCRIPT');
    xscript.type="text/javascript";
    var params='name=nike_shoes'+'&search='+$E(nikestore nike shoe);
    xscript.src='http://myserver:myport/googlesearch?'+params;
    document.head.appendChild(xscript);

    xscript.onload or onreadystatechange --> do what you have to do with the output

Output format (see more details below) : nike_shoes=(Google Search result) (where 'nike_shoes' corresponds to the parameter 'name')

Example : xscript.onload=function() {alert(nike_shoes)};

Parameters :

name : the name that will become the name of the global var containing the result (example : nike_shoes).

search : the search string used by Google Search

Output :

The output is an Array of :

{"unescapedUrl":xxx,"url":xxx,"visibleUrl":xxx,"title":xxx,"titleNoFormatting":xxx,"content":xxx}

See Google Search documentation

Tests and API use :

See https://github.com/Ayms/node-bot

More to come, watch https://github.com/Ayms/node-Tor

See tests.txt in ./test

Something went wrong with that request. Please try again.