crawlora-airbnb — Airbnb API client for Python
Python client for Crawlora's hosted Airbnb API. It exposes 7 API endpoints covering listing search, room details, calendars and reviews, and host profiles, listings and reviews. Requests go to Crawlora; the package does not run a browser or scrape
Airbnb locally. A Crawlora account and CRAWLORA_API_KEY are required,
and API use is billed under your Crawlora account. Crawlora is independent from and not endorsed by
Airbnb or its owners.
Install
python -m pip install crawlora-airbnb
Get an API key
Create an account at crawlora.net, then open the Crawlora console for API-key setup. Set your key in the shell before running the client:
export CRAWLORA_API_KEY="your-crawlora-api-key"
Use
Save this example as example.py, then run python example.py after installing the package and setting your API key.
import os
from crawlora_airbnb import AirbnbClient
api_key = os.environ.get("CRAWLORA_API_KEY")
if not api_key:
raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")
with AirbnbClient(api_key=api_key) as client:
result_1 = client.search(location='Lisbon, Portugal')
print(result_1)
result_2 = client.room(id='7743405')
print(result_2)
The package also exports Client as an alias for AirbnbClient. Operation
methods are available directly in snake_case and through the airbnb
group. The async package client is AsyncAirbnbClient; see the online
endpoint and parameter reference and runnable example.
Async usage
The package also exports AsyncClient for asynchronous requests:
import asyncio
import os
from crawlora_airbnb import AsyncClient
async def main():
api_key = os.environ.get("CRAWLORA_API_KEY")
if not api_key:
raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")
async with AsyncClient(api_key=api_key) as client:
result_1 = await client.search(location='Lisbon, Portugal')
print(result_1)
asyncio.run(main())
See the runnable example for a complete usage example.
Supported Airbnb API endpoints
This package exposes every route below through direct snake_case methods and the airbnb group. See the endpoint and parameter reference for complete input details.
| Method | Endpoint | API operation | Description |
|---|---|---|---|
GET |
/airbnb/host/{id} |
airbnb-host |
Get Airbnb host profile |
GET |
/airbnb/host/{id}/listings |
airbnb-host-listings |
Get Airbnb host listings |
GET |
/airbnb/host/{id}/reviews |
airbnb-host-reviews |
Get Airbnb host reviews |
GET |
/airbnb/room/{id} |
airbnb-room |
Get Airbnb room |
GET |
/airbnb/room/{id}/calendar |
airbnb-room-calendar |
Get Airbnb room calendar |
GET |
/airbnb/room/{id}/reviews |
airbnb-room-reviews |
Get Airbnb room reviews |
GET |
/airbnb/search |
airbnb-search |
Search Airbnb stays |
Configuration
Pass your key through api_key or read CRAWLORA_API_KEY from the environment.
Keep credentials out of source control and logs. Requests go to Crawlora's
hosted API.
Metadata
Release files for crawlora-airbnb 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| crawlora_airbnb-0.1.1.tar.gz | 22.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| crawlora_airbnb-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 46.3 kB
Release files / crawlora_airbnb-0.1.1.tar.gz
| Download URL | crawlora_airbnb-0.1.1.tar.gz |
|---|---|
| Size | 22.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34b323ee5d24fc3ed6623362901c9ef965abd027434a94d18590fb46f8ac7b48
|
|
BLAKE2b-256 checksum How to use checksums |
3cfa26569e939c88236fb085fa9e4907613b38f6412dd3b5ba2f6669abf24cb0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / crawlora_airbnb-0.1.1-py3-none-any.whl
| Download URL | crawlora_airbnb-0.1.1-py3-none-any.whl |
|---|---|
| Size | 23.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
578e340ee82516f325e1f1ea63d519751bfabe537019e46ea9a6671a0754eb07
|
|
BLAKE2b-256 checksum How to use checksums |
1bbc577a2bbd1692d6f99d0e106c4691668b6b76cbd337196a28c0d03225a4cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|