¿Existe alguna forma de acceder a los datos de tráfico que proporciona Google a través de un servicio web?
Parece haber un GTrafficOverlay
que coloca el tráfico en la parte superior de una ruta en un mapa de Google incrustado, pero no hay un servicio web directo que pueda consumir para, por ejemplo, dar la fuente y el destino y encontrar el tráfico entre ellos.
¿Hay alguna otra fuente de la que pueda obtener estos datos?
google-maps-api-3
Tejaswi Yerukalapudi
fuente
fuente
Respuestas:
No hay forma (o al menos ninguna forma razonablemente fácil y conveniente) de obtener los datos de tráfico sin procesar de Google Maps Javascript API v3. Incluso si pudieras hacerlo, es probable que hacerlo infrinja alguna cláusula de los Términos de servicio de Google Maps. Tendría que obtener esta información de otro servicio. Dudo que exista un servicio gratuito que brinde esta información en este momento, pero me encantaría que alguien me demuestre que estoy equivocado.
Como señala @crdzoba, la API de Bing Maps expone algunos datos de tráfico . Quizás eso pueda satisfacer sus necesidades. No está claro en la documentación cuántos datos de tráfico se exponen, ya que solo son datos sobre "incidentes". El tráfico lento debido a la construcción estaría allí, pero no es obvio para mí si sería lento debido simplemente al volumen.
ACTUALIZACIÓN (marzo de 2016): Mucho ha ocurrido desde esta respuesta fue escrito en 2011, pero los puntos centrales parecen contener hasta: Usted no encontrará los datos de tráfico en bruto en forma gratuita los servicios de API (al menos no para los EE.UU., y probablemente no la mayoría de los otros lugares). Pero si no le importa pagar un poco y / o si solo necesita cosas como "tiempo de viaje para una ruta específica teniendo en cuenta el tráfico", tiene opciones. La respuesta de @Anto , por ejemplo, apunta a Google Maps For Work como un servicio de API de pago que le permite obtener tiempos de viaje teniendo en cuenta el tráfico.
fuente
Al parecer, la información está disponible utilizando la API de Google Directions en su edición profesional Maps for work . Según la documentación de la API :
fuente
Es posible que desee echar un vistazo a AQUÍ MAP SERVICE. Tienen datos de tráfico directo que puede usar, que es exactamente lo que necesita: https://developer.here.com/api-explorer/rest/traffic/traffic-flow-bounding-box
Por ejemplo, al consultar un área de interés, puede obtener algo como esto:
Este ejemplo muestra una velocidad promedio actual
SU
de 9.1, donde la velocidad de flujo libreFF
sería 17. El factor de atascoJF
es 3.3, que todavía se considera flujo libre pero se vuelve lento. Las unidades utilizadas (millas / km) se pueden definir en la llamada API. Para evitar tener que lidiar con ubicaciones de TMC, puede solicitar geocoordenadas de los tramos de carretera agregandoresponseattributes=sh
la solicitud.Las abreviaturas utilizadas se pueden encontrar aquí Interpretando HERE Maps etiquetas de tráfico en tiempo real :
Además, la fuente proviene de https://developer.here.com/rest-apis/documentation/traffic/topics/additional-parameters.html
fuente
La API de Bing Maps tiene un servicio REST que devuelve información de tráfico
http://msdn.microsoft.com/en-us/library/hh441725
fuente
En lugar de intentar extraer los datos de tráfico sin procesar, puede intentar un enfoque diferente. La API de Google Directions le permite consultar la API con una ruta en particular y, como resultado, devuelve una cadena JSON o un elemento XML. Este resultado incluye el elemento - 'duration_in_traffic' Esto indica la duración total del tramo particular del viaje, teniendo en cuenta las condiciones actuales del tráfico. (para obtener información sobre 'tramo' y otros elementos de la cadena JSON devuelta por la API de direcciones, consulte el enlace a continuación)
https://developers.google.com/maps/documentation/directions/#JSON No lo he probado yo mismo, pero es algo que encontré en la documentación.
fuente
En India usamos http://www.itrafficnews.com . Pero los datos los publican los usuarios. No creo que Google proporcione los datos.
fuente
Tal vez debería echar un vistazo a Mapquests Traffic API: http://www.mapquestapi.com/traffic/
Desafortunadamente, el servicio web solo está disponible para algunas ciudades de los EE. UU., Creo. Pero probablemente resuelva tu problema.
fuente
No creo que Google proporcione esta API. Y los datos de tráfico no solo contienen los datos del incidente.
Hoy en día, muchos mapas en línea muestran el tráfico de la ciudad, pero no proporcionan la API para el desarrollador. Incluso no sabemos de dónde obtienen los datos de tráfico. Quizás el gobierno tenga los datos.
Así que creo que podrías pensarlo desde otra dirección. Por ejemplo, existen muchos sitios web de redes sociales. Todo el mundo puede publicar la información de tráfico en el sitio web. Podemos recopilar esta información para obtener el estado del tráfico. O tal vez podamos crear un sitio web de este tipo.
Pero ese tipo de datos de tráfico (mencionado anteriormente) no es exacto. Incluso la información proporcionada por humanos será incorrecta.
Afortunadamente, descubrí que mi ciudad ahora ofrece una aplicación móvil llamada "Información de autobuses en tiempo real". Podría decirle al ciudadano dónde está ahora el autobús y cuándo llegará a la estación de autobuses. Y huelo la API REST en esta aplicación. Los datos de la API REST proporcionan los datos importantes, por ejemplo, la latitud y la longitud, y también la velocidad del bus. ¡Y son datos en tiempo real! Así que creo que podríamos calcular el estado del tráfico a partir de estos datos (mediante alguna programación). Aquí hay algunos datos de muestra: https://github.com/sp-chenyang/bus/blob/master/sample_data/bjgj_aibang_com_8899_bjgj_php_city_linename_stationno_datatype_type.json
Incluso los datos del autobús no serán suficientes para calcular el estado del tráfico en tiempo real con precisión. Los incidentes, el semáforo y otras cosas afectarán el estado del tráfico. Pero creo que este es el comienzo.
Al final, creo que podría intentar averiguar si su ciudad proporciona estos datos.
PD: Siempre pienso que la vida será mejor para las personas en el futuro, pero no ahora.
fuente
Es posible obtener datos de tráfico. A continuación se muestra mi implementación en python. La API tiene cierta cuota y no es completamente gratuita, pero es lo suficientemente buena para proyectos pequeños
La respuesta es: -
Debe pasar
"departure_time":str(int(time.time()))
es un parámetro de cadena de consulta obligatorio para la información de tráfico.Su información de tráfico estaría presente en
duration_in_traffic
.Consulte esta documentación para obtener más información.
fuente
Existe un proyecto llamado Open Traffic que no es completamente funcional en este momento, pero parece ser la respuesta correcta en el futuro.
fuente