elm.web.search.google.APIGoogleCSESearch

class APIGoogleCSESearch(api_key=None, cse_id=None)[source]

Bases: APISearchEngineLinkSearch

Search the web for links using a Google CSE API

Parameters:

api_key (str, optional) – API key for search engine. If None, will look up the API key using the API_KEY_VAR environment variable. By default, None.

Methods

results(*queries[, num_results])

Retrieve links for the first num_results of each query

Attributes

API_KEY_VAR

Environment variable that should contain the Google CSE API key

CSE_ID_VAR

Environment variable that should contain CSE ID

API_KEY_VAR = 'GOOGLE_API_KEY'

Environment variable that should contain the Google CSE API key

CSE_ID_VAR = 'GOOGLE_CSE_ID'

Environment variable that should contain CSE ID

async results(*queries, num_results=10)

Retrieve links for the first num_results of each query

This function executes a search for each input query and returns a list of links corresponding to the top num_results.

Parameters:
  • *queries (str) – One or more queries to search for.

  • num_results (int, optional) – Maximum number of top results to retrieve for each query. Note that this value can never exceed the number of results per page (typically 10). If you pass in a larger value, it will be reduced to the number of results per page. There is also no guarantee that the search query will return this many results - the actual number of results returned is determined by the number of results on a page (excluding ads). You can, however, use this input to limit the number of results returned. By default, 10.

Returns:

list – List equal to the length of the input queries, where each entry is another list containing no more than num_results links.