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.
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
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')
}
This module exports a single async function:
-
query
is a required string - Returns a promise that resolves to a string or
null
if no suggestion is found.s
npm install
npm test
- 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
MIT