/yelpapi

yelpapi is a pure Python implementation of the Yelp Fusion API (aka Yelp v3 API).

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

yelpapi

Build Status

LICENSE

This software is licensed under the BSD 3-Clause License. Please refer to the separate LICENSE file for the exact text of the license. You are obligated to give attribution if you use this code.

ABOUT

yelpapi is a pure Python implementation of the Yelp Fusion API (aka Yelp v3 API). It is simple, fast, and robust to any changes Yelp may make to the API in the future.

REQUIREMENTS

This code requires Python 3.7 or higher and requests.

INSTALL

yelpapi is available on PyPI at https://pypi.org/project/yelpapi/.

Install using pip:

pip install yelpapi

Install from source:

python setup.py install

USING THIS CODE

This API is demonstrated more thoroughly in examples.py, but the following chunk of code demonstrates basic use of yelpapi:

from yelpapi import YelpAPI
with YelpAPI(api_key) as yelp_api:
    search_results = yelp_api.search_query(args)

You can also set timeouts so API calls do not block indefinitely in degraded network conditions:

from yelpapi import YelpAPI
with YelpAPI(api_key, timeout_s=3.0) as yelpapi:
    search_results = yelp_api.search_query(args)

Under the covers, this module uses a requests.Session object for issuing all API calls, which offers potentially significant performance benefits over issuing separate API calls outside of a session. You should be sure to close the underlying session when all API interactions are complete. The above examples demonstrate using the class as a context manager, which will automatically close the connection when you're done and is the preferred way of using the class, but you can also manually close it like this if a context manager won't work for your use case:

from yelpapi import YelpAPI
try:
    yelp_api = YelpAPI(api_key)
    search_results = yelp_api.search_query(args)
finally:
    yelp_api.close()

METHODS