Saya mencari untuk menentukan distrik kongres berdasarkan alamat yang diberikan pengguna saya. Ini akan menghindari memiliki pengguna untuk mencarinya sendiri.
Apakah API semacam ini ada?
Catatan
Melalui upaya saya untuk menemukan satu, saya hanya menemukan ini:
http://www.govtrack.us/developers/api
(tidak yakin bagaimana cara mengirim alamat atau kode pos)Sumber daya berikut tersedia di API
... Tagihan dan resolusi di Kongres AS sejak 1973 (Kongres ke-93).
... Sepasang (tagihan, orang) yang menunjukkan cosponsorship, dengan tanggal bergabung dan ditarik.
... Anggota Kongres dan Presiden AS sejak berdirinya negara.
... Ketentuan berlaku di kantor oleh Anggota Kongres dan Presiden AS. Setiap istilah sesuai dengan pemilihan, yang berarti setiap istilah di DPR mencakup dua tahun (satu 'Kongres'), sebagai Presiden empat tahun, dan di Senat enam tahun (tiga 'Kongres').
... Putar suara panggilan di Kongres AS sejak 1789. Cara orang memilih diakses melalui API Vote_voter.
... Bagaimana orang-orang memberikan suara pada daftar panggilan di Kongres AS sejak 1789. Lihat Vote API. Saring pada bidang suara untuk mendapatkan hasil suara tertentu ...
http://www.opencongress.org/api
(tampaknya menjadi cara untuk menemukan informasi kongres, tetapi bukan distrik)API ini memberikan akses terstruktur kepada semua programmer ke semua data di OpenCongress, mulai dari info tagihan resmi hingga berita dan liputan blog hingga suara yang dihasilkan pengguna atas tagihan dan banyak lagi ...
API ini default untuk mengembalikan XML. Semua kueri juga dapat mengembalikan JSON ...
https://groups.google.com/forum/?fromgroups=#!topic/opendems-discuss/CeKyi_aANaE
(pertanyaan serupa, tidak ada resolusi)Saya telah melihat Open Dems, dan melihat apa yang terbuka pada saat ini dan apa yang tidak. Saya bekerja dengan Demokrat di Luar Negeri, dan saya tertarik menggunakan barang-barang dari lab untuk situs mereka.
Saya dengan cepat melihat ke Precinct API, yang melakukan lebih banyak dan lebih sedikit daripada yang saya butuhkan. Sumber yang ideal adalah cara menerjemahkan alamat ke dalam CD paling tidak (mendapatkan data distrik negara juga bagus), karena itu akan memudahkan keanggotaan DA untuk membuat perbedaan dalam balapan seperti balapan NY26 bulan lalu .. .
Memperbarui
Saya mencari sumber untuk situs web govtrack.us dan fungsi 'doGeoCode' mungkin berguna.
view-source: http: //www.govtrack.us/congress/members
Jika tidak ada yang punya saran, saya akan mencoba untuk keluar dari apa yang mereka lakukan.
Jawaban:
Saya belum menggunakannya, tetapi pencarian cepat membawa saya ke API Kongres dari Sunlight Labs. Lihat metode district.getDistrictsFromZip mereka - sepertinya itu yang Anda cari. Anda mungkin mendapatkan hasil yang lebih baik (lebih akurat) geocoding sendiri alamat dan kemudian menggunakan district.getDistrictFromLatLong - Saya berasumsi bahwa kode pos yang diberikan dapat melintasi batas-batas kabupaten.
sumber
Google Civics API adalah solusi terbaik. Hit API tunggal memberi Anda baik Pejabat dan Distrik Terpilih.
Anda bisa mendapatkan Distrik dengan koordinat GPS (lat / lng) seperti:
https://developers.google.com/civic-information/docs/v2/representatives/representativeInfoByAddress
Anda bisa mendapatkan yang serupa untuk info tingkat negara menggunakan OpenStates :
"http://openstates.org/api/v1/legislators/geo/?apikey={0}&lat={1}&long={2}";
Tambahan tentang Google Civic API Going Down Sering
Google Civics API tidak jelas apakah mendukung lat / lng, dan setiap beberapa bulan, ia akan berhenti mendukung lat / lng selama sebulan atau lebih, sampai seseorang melaporkannya dan pemberitahuan Google, atau lebih khusus lagi, satu karyawan mungkin ada yang mengerjakan ini dalam pemberitahuan waktu sukarela mereka ("Chelan") dan berusaha memperbaikinya:
https://groups.google.com/d/msg/google-civicinfo-api/0td48h7JxYA/Zhij3yQiCgAJ
Jika layanan Anda mengharapkan data Civic API itu akan macet, dan jika itu membutuhkan data Civics API berguna, itu mungkin tidak macet tetapi akan sia-sia selama berbulan-bulan pada suatu waktu. Kegagalan terbaru adalah seluruh periode pemungutan suara untuk sebagian besar negara bagian di 2018, jadi, itu cukup downtime.
Anda dapat bermain pertahanan dengan membalikkan geocoding secara eksplisit:
Jadi di sini, kita pergi melalui HTML5 biasa meminta lokasi pengguna, dan jika mereka mengatakan Tidak / Blok kami menunjukkan kepada mereka pesan "Tidak bisa mendapatkan lokasi Anda" (dengan geoFail). Lalu kita punya lat / lng, tetapi, Google Civics API tidak menentu sehingga kita akan bertanya kepada Google secara eksplisit tentang alamatnya. Itu muncul kembali sebagai r [0] .formatted_address, yang dalam beberapa jawaban Google menyarankan Anda tunjukkan kepada pengguna untuk mengonfirmasi lokasi yang mereka cari. Jadi kami memasukkannya ke dalam kotak teks alamat dan mengirimkannya via
loadReps(lat, lng, address)
.Perhatikan bahwa ada kemungkinan panggilan geocode bisa gagal (termasuk karena koneksi internet yang tidak stabil), tetapi, kadang-kadang Google Civics API beroperasi penuh, jadi, tidak perlu menyangkal hasil pengguna dalam skenario ini; backend yang saya tulis dalam kasus ini dapat menerima lat / lng dan alamat opsional, dan mentolerir alamat yang hilang. Kemudian ia mencoba berbicara dengan Google Civic API, dan, jika tidak mendapatkan apa-apa, ia perlu bertahan dan memberi tahu pengguna bahwa Civic API rusak, maaf.
Jawaban Historis
API Kongres dari Sunlight Foundation * hanya Federal - tidak ada tingkat negara bagian, jika itu penting bagi Anda. Dan [Yayasan Sunlight ditutup, karena mereka tidak ingin menduplikasi upaya GovTrack.
API * GovTrack lebih lengkap. Mereka
/role
paling dekat dengan pertanyaan Anda:https://www.govtrack.us/developers/api#endpoint_role
Ini memberitahu Anda semua Senator dan anggota Dewan saat ini, dan kapan pemilihan mereka berikutnya. Jadi, Anda akan memiliki beban penyaringan.
Untuk hal-hal tingkat negara Anda ingin OpenStates.org, seperti:
http://openstates.org/api/v1/legislators/geo/?apikey= {0} & lat = {1} & long = {2}
https://openstates.org/
* Berita buruk, semuanya mati setiap saat. Sunlight Foundation mematikan API mereka untuk menghindari duplikasi karya Govtrack. Govtrack sedang mematikan milik mereka sekarang , untuk menghindari duplikasi karya ProPublica. Tetapi Propublica tampaknya tidak memberi Anda kabupaten dari lokasi sama sekali:
https://projects.propublica.org/api-docs/congress-api/
Jadi tunggu, Anda mungkin berkata, itu tidak masuk akal, karena situs Representasi ProPublica , yang ditransfer dari proyek Representasi shutdown NYTimes, memungkinkan Anda memetakan alamat dan mendapatkan kabupaten dari koordinat GPS. Dan mereka menautkan ke API mereka dari halaman itu. Yah menipu Anda, karena halaman itu tidak menggunakan API mereka. Bahkan, ia menggunakan API temuan distrik Sunlight Foundation.
Berantakan sekali.
sumber
Saya menyadari pertanyaan ini sudah tua, tetapi saya pikir saya akan memberikan dua sen untuk siapa pun yang mungkin masih mencari.
Pertama, beberapa info latar belakang. Distrik kongres sangat spesifik - sampai ke alamat itu sendiri, bukan hanya jalan. Saya dan tetangga saya di seberang jalan bisa berada di distrik kongres yang berbeda. Inilah sebabnya mengapa sangat penting untuk mendapatkan kode ZIP + 4 yang baik untuk memastikan Anda menempatkan alamat di distrik yang benar. Sebuah sistem (seperti SmartyStreets atau Melissa Data atau QAS, dll.) Yang melakukan validasi alamat akan memberi Anda ZIP + 4 yang andal untuk memastikan bahwa distrik tersebut benar.
SmartyStreets memiliki API LiveAddress mereka , yang mengembalikan data kongres bersama dengan lebih dari 40 titik data lainnya (geocode, perumahan vs komersial, dll.).
sumber
Melissa Data membuat alat untuk verifikasi alamat yang mencakup informasi tentang distrik-distrik politik. Saya tidak tahu apakah mereka memiliki api publik; tautan di atas akan membawa Anda ke halaman pencarian alamat. Mereka menawarkan sejumlah pencarian gratis yang dapat ditingkatkan dengan berlangganan . Silakan periksa persyaratan penggunaannya sebelum memasukkan ini ke dalam aplikasi produksi.
Sementara data mereka diperbarui setiap bulan, saya perhatikan bahwa beberapa di antaranya tidak mencerminkan redistricting baru-baru ini.
Banyak negara bagian memiliki informasi ini tersedia, tetapi saya ragu bahwa ada konsistensi dalam implementasinya.
sumber