Un exemple rapide d'obtention du code, de son utilisation efficace et de son application à votre flux de travail
Inscrivez-vous sur distancematrix.ai pour obtenir une clé API. Cette clé vous permettra d'accéder à nos API Distance Matrix et Geocoding.
# Exemple : Attribuez votre clé API à une variable dans votre export de code
export DISTANCE_MATRIX_API_KEY="YOUR_API_KEY"
Utilisez l'API Geocoding pour transformer les adresses des passagers et des conducteurs en coordonnées de latitude/longitude, ce qui est essentiel pour des calculs précis d'itinéraires et d'ETA.
import os
import requests
api_key = os.environ.get("DISTANCE_MATRIX_API_KEY")
geocode_url = "https://api.distancematrix.ai/maps/api/geocode/json"
def geocode_address(address):
params = {
'address': address,
'key': api_key
}
response = requests.get(geocode_url, params=params).json()
location = response['results'][0]['geometry']['location']
return location['lat'], location['lng']
# Example: Convert a passenger's address into coordinates
passenger_lat, passenger_lng = geocode_address("1600 Amphitheatre Parkway, Mountain View, CA")
Une fois que vous avez les coordonnées, utilisez l'API Distance Matrix pour trouver les temps de trajet et les distances. L'API prend en compte le trafic en temps réel et d'autres conditions pour obtenir des résultats précis.
distance_url = "https://api.distancematrix.ai/maps/api/distancematrix/json"
def get_time_distance(origins, destinations):
# origins and destinations should be lists of "lat,lng" strings
params = {
'origins': '|'.join(origins),
'destinations': '|'.join(destinations),
'key': api_key
}
response = requests.get(distance_url, params=params).json()
return response
# Example: Check travel times between multiple drivers and one passenger
driver_coords = [
"37.422,-122.084", # Driver 1
"37.7749,-122.4194" # Driver 2
]
passenger_coord = [f"{passenger_lat},{passenger_lng}"]
matrix_data = get_time_distance(driver_coords, passenger_coord)
L'API Distance Matrix fournit des durées et des distances pour chaque paire origine-destination. En effectuant une comparaison locale, vous pouvez identifier le chauffeur qui peut arriver le plus rapidement et estimer l'ETA. Bien qu'il ne s'agisse pas d'une fonctionnalité intégrée à l'API elle-même, elle est simple à implémenter à l'aide des données matricielles.
Affichez les ETA dans l'application de votre client, utilisez les coordonnées pour afficher la position des conducteurs en temps réel sur une carte et intégrez les données de distance/durée dans votre logique de calcul tarifaire. Les API sont flexibles et faciles à intégrer à vos systèmes existants.