![Python](https://img.shields.io/pypi/pyversions/async-cse.svg)
async-cse
Asyncio API wrapper for the Google Custom Search JSON API.
Installation
Want stable releases?
pip3 install -U async_cse
Living on the edge? Want hotfixes?
pip3 install -U git+https://github.com/crrapi/async-cse
Usage
import async_cse
client = async_cse.Search("Your API Key")
results = await client.search("Python", safesearch=False)
first_result = results[0]
print(first_result.title, first_result.description, first_result.url, first_result.image_url)
await client.close()
Getting image results
To get image results with the default engine, use image_search=True
when searching, like so:
await client.search("Python", safesearch=False, image_search=True)
Custom search engines
To use Search objects with a custom search engine, provide the ID of the search engine.
async_cse.Search("Your API Key", engine_id="015786823554162166929:mywctwj8es4")
SafeSearch
SafeSearch can also be turned off by setting safesearch=False
when using the search()
method.
Getting an API key
You can get an API key by going here and scrolling down to the API key section.
![Getting an API key API key](https://i.imgur.com/pHXFiI8.png)
(New in 0.3.0) API Key Shuffling
Key shuffling may be used as a fail-safe for keys that run out of requests, effectively giving you +100 requests for each key passed.
Just pass a list of keys when instantiating your Search
client.
Here's a demonstration of this:
import async_cse
client = async_cse.Search(["API Key 1", "API Key 2", "API Key 3"])
await client.search("Python")
When async-cse
detects a non-working key, it will remove it from its internal list and retry the search.