Có thể lấy dữ liệu lưu lượng. Dưới đây là cách thực hiện của tôi trong python. API có một số hạn ngạch và không hoàn toàn miễn phí, nhưng đủ tốt cho các dự án nhỏ
import requests
import time
import json
while True:
url = "https://maps.googleapis.com/maps/api/distancematrix/json"
querystring = {"units":"metric","departure_time":str(int(time.time())),"traffic_model":"best_guess","origins":"ITPL,Bangalore","destinations":"Tin Factory,Bangalore","key":"GetYourKeyHere"}
headers = {
'cache-control': "no-cache",
'postman-token': "something"
}
response = requests.request("GET", url, headers=headers, params=querystring)
d = json.loads(response.text)
print("On", time.strftime("%I:%M:%S"),"time duration is",d['rows'][0]['elements'][0]['duration']['text'], " & traffic time is ",d['rows'][0]['elements'][0]['duration_in_traffic']['text'])
time.sleep(1800)
print(response.text)
Câu trả lời là: -
{
"destination_addresses": [
"Tin Factory, Swamy Vivekananda Rd, Krishna Reddy Industrial Estate, Dooravani Nagar, Bengaluru, Karnataka 560016, India"
],
"origin_addresses": [
"Whitefield Main Rd, Pattandur Agrahara, Whitefield, Bengaluru, Karnataka 560066, India"
],
"rows": [
{
"elements": [
{
"distance": {
"text": "10.5 km",
"value": 10505
},
"duration": {
"text": "35 mins",
"value": 2120
},
"duration_in_traffic": {
"text": "45 mins",
"value": 2713
},
"status": "OK"
}
]
}
],
"status": "OK"
}
Bạn cần chuyển "departure_time":str(int(time.time()))
là tham số chuỗi truy vấn bắt buộc cho thông tin lưu lượng.
Thông tin giao thông của bạn sẽ có trong duration_in_traffic
.
Tham khảo tài liệu này để biết thêm thông tin.
https://developers.google.com/maps/documentation/distance-matrix/intro#traffic-model