2.0.0 • Published 4 years ago

google-did-you-mean v2.0.0

Weekly downloads
6
License
MIT
Repository
github
Last release
4 years ago

google-did-you-mean

Fetch Google search suggestions for misspelled queries by scraping for 'Did you mean...' and 'Showing results for...' links.

This package makes HTTP requests to Google's public search page so it doesn't require an API key.

Installation

This is a Node.js module available through the npm registry. It can be installed using the npm or yarn command line tools.

npm install google-did-you-mean

Usage

const didYouMean = require('google-did-you-mean')

async function main () {
  const query = await didYouMean('fidooshiary')
  console.log(query.suggestion) // => 'fiduciary'
}

main()

If you make too many requests in a short period of time from the same IP or network, you'll start getting 429 responses from Google. When this happens, an axios error object will be attached to resolved object:

const query = await didYouMean('overzealous')
if (query.error && query.error.request.response.statusCode === 429) {
  console.log('uh oh! too many requests')
}

API

This module exports a single async function:

async didYouMean(query)

  • query is a required string
  • Returns a promise that resolves to a string or null if no suggestion is found.s

Tests

npm install
npm test

Dependencies

  • axios: Promise based HTTP client for the browser and node.js
  • cheerio: Tiny, fast, and elegant implementation of core jQuery designed specifically for the server

Dev Dependencies

  • jest: Delightful JavaScript Testing.
  • standard: JavaScript Standard Style

License

MIT