Chúng ta hầu như đều sử dụng Google Maps để kiểm tra khoảng cách giữa điểm xuất phát và điểm đến cũng như thời gian di chuyển. Đối với các nhà phát triển và người đam mê, Google cung cấp "Google Distance Matrix API" để tính toán khoảng cách và thời gian giữa hai vị trí.
Điều kiện tiên quyết
Để sử dụng Google Distance Matrix API, bạn cần khóa API của Google Maps, có thể lấy từ liên kết sau:
https://developers.google.com/maps/documentation/distance-matrix/get-api-key
Các thư viện cần thiết
Chúng ta có thể thực hiện việc này bằng nhiều thư viện Python khác nhau, chẳng hạn:
- Pandas
- googlemaps
- Requests
- Json
Tôi sử dụng thư viện requests và json cơ bản. Sử dụng pandas, bạn có thể nhập nhiều điểm xuất phát và điểm đến cùng lúc và xuất kết quả ra file CSV.
Mã chương trình
# Nhập thư viện cần thiết
import requests
import json
# Nhập điểm xuất phát và điểm đến
originPoint = input("Vui lòng nhập thành phố xuất phát: ")
destinationPoint = input("Vui lòng nhập thành phố đích: ")
# Đặt khóa API Google Maps vào biến
apiKey = 'YOUR_API_KEY'
# Lưu URL API Google Maps
url = 'https://maps.googleapis.com/maps/api/distancematrix/json?'
# Gọi phương thức get của module requests và lưu đối tượng phản hồi
r = requests.get(url + 'origins=' + originPoint + '&destinations=' + destinationPoint + '&key=' + apiKey)
# Lấy kết quả dạng JSON từ đối tượng phản hồi
res = r.json()
# In giá trị của res
print(res)
Kết quả đầu ra
Vui lòng nhập thành phố xuất phát: Delhi
Vui lòng nhập thành phố đích: Karnataka
{'destination_addresses': ['Karnataka, India'], 'origin_addresses': ['Delhi, India'], 'rows': [{'elements': [{'distance': {'text': '1,942 km', 'value': 1941907}, 'duration': {'text': '1 day 9 hours', 'value': 120420}, 'status': 'OK'}]}], 'status': 'OK'}