Estoy buscando determinar el distrito del Congreso en función de una dirección que proporcione mi usuario. Esto evitará que el usuario lo busque por sí mismo.
¿Existe una API de este tipo?
Nota
A través de mis intentos de encontrar uno, solo he encontrado estos:
http://www.govtrack.us/developers/api
(sin embargo, no estoy seguro de cómo enviar una dirección o código postal)Los siguientes recursos están disponibles en la API
... Proyectos de ley y resoluciones en el Congreso de los Estados Unidos desde 1973 (el 93º Congreso).
... Un par (factura, persona) que indica copatrocinio, con fechas de ingreso y retiro.
... Miembros del Congreso y presidentes de los Estados Unidos desde la fundación de la nación.
... Términos mantenidos en el cargo por miembros del Congreso y presidentes de los Estados Unidos. Cada término corresponde a una elección, lo que significa que cada período en la Cámara abarca dos años (un 'Congreso'), como Presidente cuatro años, y en el Senado seis años (tres 'Congresos').
... Pase de votos en el Congreso de los EE. UU. Desde 1789. Se accede a la forma en que las personas votaron a través de la API Vote_voter.
... Cómo votó la gente en las votaciones nominales en el Congreso de los EE. UU. Desde 1789. Consulte la API Vote. Filtrar en el campo de votación para obtener los resultados de una votación en particular ...
http://www.opencongress.org/api
(parece ser una forma de encontrar información del congreso, pero no distritos)Esta API proporciona a los programadores acceso estructurado a todos los datos en OpenCongress, desde información oficial de facturas hasta noticias y cobertura de blogs, votos generados por los usuarios sobre facturas y mucho más ...
Esta API por defecto devuelve XML. Todas las consultas también pueden devolver JSON ...
https://groups.google.com/forum/?fromgroups=#!topic/opendems-discuss/CeKyi_aANaE
(pregunta similar, sin resolución)He estado revisando Open Dems y viendo lo que está expuesto en este momento y lo que no. Trabajo con demócratas en el extranjero y estoy interesado en usar cosas del laboratorio para sus sitios.
Rápidamente revisé la API de precinto, que hace más y menos de lo que necesito. Un recurso ideal sería cualquier forma de traducir direcciones a CD como mínimo (obtener datos del distrito estatal también sería bueno), ya que eso facilitaría la membresía de DA para marcar la diferencia en carreras como la carrera NY26 del mes pasado. .
Actualizar
Estoy mirando la fuente del sitio web govtrack.us y la función 'doGeoCode' puede ser útil.
ver-fuente: http: //www.govtrack.us/congress/members
Si nadie tiene alguna sugerencia, intentaré dejar de hacer lo que están haciendo.
Respuestas:
No lo he usado, pero una búsqueda rápida me llevó a la API del Congreso desde Sunlight Labs. Echa un vistazo a su método districts.getDistrictsFromZip : parece ser lo que estás buscando. Es posible que obtenga mejores resultados (más precisos) geocodificando la dirección usted mismo y luego usando districts.getDistrictFromLatLong : supongo que un código postal dado podría cruzar los límites del distrito.
fuente
Google Civics API es la mejor solución. Un solo golpe de API te lleva a los funcionarios electos y a los distritos.
Puede obtener distritos por medio de coordenadas GPS (lat / lng) así:
https://developers.google.com/civic-information/docs/v2/representatives/representativeInfoByAddress
Puede obtener información similar a nivel estatal con OpenStates :
"http://openstates.org/api/v1/legislators/geo/?apikey={0}&lat={1}&long={2}";
Adendas sobre el API de Google Civics que baja con frecuencia
La API de Google Civics es imprecisa sobre si admite lat / lng, y cada pocos meses, dejará de admitir lat / lng durante un mes más o menos, hasta que alguien lo informe y Google se dé cuenta, o más específicamente, el empleado probablemente esté trabajando en esto en sus avisos de tiempo voluntario ("Chelan") y considere arreglarlo:
https://groups.google.com/d/msg/google-civicinfo-api/0td48h7JxYA/Zhij3yQiCgAJ
Si su servicio espera que los datos de la API de Civics se bloqueen, y si requiere que la información de la API de Civics sea útil, es posible que no se bloquee, pero será inútil durante meses. El fracaso más reciente fue el período de votación completo para la mayoría de los estados en 2018, por lo que ese es el tiempo de inactividad.
Puedes jugar a la defensa explícitamente revertir la geocodificación:
Entonces, aquí, revisamos la ubicación habitual del usuario de HTML5, y si dicen No / Bloquear, les mostramos el mensaje "No se pudo obtener su ubicación" (con geoFail). Luego tenemos el lat / lng, pero la API de Google Civics es errática, así que le preguntaremos a Google explícitamente la dirección. Eso vuelve como r [0] .formatted_address, que en algunas respuestas Google recomienda que le muestres al usuario para confirmar la ubicación que está buscando. Así que lo ponemos en el cuadro de texto de la dirección y lo enviamos a través de
loadReps(lat, lng, address)
.Tenga en cuenta que es posible que la llamada de geocodificación pueda fallar (incluso debido a una conexión a Internet débil), pero, a veces, la API de Google Civics está en pleno funcionamiento, por lo que no es necesario negarle al usuario un resultado aún en este escenario; El backend que escribí en este caso puede aceptar lat / lng y dirección opcional, y tolerar la dirección que falta. Luego intenta hablar con Google Civics API y, si no consigue nada, necesita sobrevivir y decirle al usuario que el Civics API está roto, lo siento.
Respuesta historica
La API del Congreso de Sunlight Foundation * es solo federal, no a nivel estatal, si eso es importante para usted. Y [Sunlight Foundation se está cerrando, porque no quieren duplicar los esfuerzos de GovTrack.
La API * de GovTrack es más completa. Su
/role
más cercano a su pregunta:https://www.govtrack.us/developers/api#endpoint_role
Le informa a todos los senadores y miembros actuales de la Cámara, y cuándo es su próxima elección. Entonces tendrías una carga de filtrado.
Para cosas de nivel estatal que desea OpenStates.org, como:
http://openstates.org/api/v1/legislators/geo/?apikey= {0} & lat = {1} & long = {2}
https://openstates.org/
* Malas noticias, todo se está cerrando todo el tiempo. Sunlight Foundation cerró su API para evitar duplicar el trabajo de Govtrack. Govtrack está cerrando el suyo ahora , para evitar duplicar el trabajo de ProPublica. Pero Propublica's no parece brindarle el distrito desde su ubicación:
https://projects.propublica.org/api-docs/congress-api/
Espere, podría decir, eso no tiene sentido, porque el sitio de representación de ProPublica , que se transfiere desde el proyecto de representación de cierre de NYTimes, le permite mapear una dirección y obtener el distrito de las coordenadas GPS. Y se vinculan a su API desde esa página. Bien engañado, porque esa página no utiliza su API. De hecho, utiliza la API de búsqueda de distrito de la Fundación Sunlight.
Que desastre.
fuente
Me doy cuenta de que esta pregunta es antigua, pero pensé que arrojaría mis dos centavos por cualquiera que todavía pudiera estar buscando.
Primero, alguna información de fondo. Los distritos del Congreso son extremadamente específicos, hasta una dirección en sí, no solo la calle. Mi vecino y yo al otro lado de la calle podríamos estar en diferentes distritos del Congreso. Es por eso que es tan importante obtener un buen código postal + 4 para asegurarse de colocar la dirección en el distrito correcto. Un sistema (como SmartyStreets o Melissa Data o QAS, etc.) que realiza la validación de la dirección le daría un ZIP + 4 confiable para garantizar que el distrito sea correcto.
SmartyStreets tiene su API LiveAddress , que devuelve datos del Congreso junto con más de 40 otros puntos de datos (códigos geográficos, residenciales frente a comerciales, etc.).
fuente
Melissa Data crea herramientas para la verificación de direcciones que incluye información sobre distritos políticos. No sé si tienen una API pública; el enlace de arriba lo llevará a una página de búsqueda de direcciones. Ofrecen un número limitado de búsquedas gratuitas que se pueden aumentar con una suscripción . Verifique sus términos de uso antes de poner esto en una aplicación de producción.
Si bien sus datos se actualizan mensualmente, he notado que algunos de ellos no reflejan la reciente redistribución de distritos.
Muchos estados tienen esta información disponible, pero dudo que haya alguna coherencia en su implementación.
fuente