কংগ্রেসনাল জেলা নির্ধারণের জন্য কি কোনও এপিআই রয়েছে? [বন্ধ]


11

আমি কংগ্রেসনাল জেলা নির্ধারণ করতে খুঁজছি যে আমার ব্যবহারকারীর সরবরাহ করে এমন একটি ঠিকানাের ভিত্তিতে। এটি ব্যবহারকারীকে নিজের দিকে নজর দেওয়া এড়াবে।

এই ধরণের একটি API উপস্থিত আছে?

বিঃদ্রঃ

আমার সন্ধানের জন্য আমার প্রচেষ্টার মাধ্যমে আমি কেবল এগুলিই পেয়েছি:

  • http://www.govtrack.us/developers/api
    (তবে কীভাবে কোনও ঠিকানা বা জিপ কোড জমা দিতে হবে তা নিশ্চিত নন)

    নিম্নলিখিত সংস্থানগুলি এপিআইতে উপলব্ধ

    ... 1973 সাল থেকে মার্কিন কংগ্রেসে বিল এবং রেজোলিউশন (93 তম কংগ্রেস)।

    ... যোগদানের এবং প্রত্যাহারের তারিখ সহ এক (বিল, ব্যক্তি) জুটি সহকারী স্পনসরর নির্দেশ করে।

    ... দেশ প্রতিষ্ঠার পর থেকে কংগ্রেস এবং মার্কিন রাষ্ট্রপতিদের সদস্যরা।

    ... কংগ্রেস সদস্য এবং মার্কিন রাষ্ট্রপতিদের দ্বারা অফিসে শর্তাবলী রাখা। প্রতিটি পদ একটি নির্বাচনের সাথে মিলে যায়, যার অর্থ হাউসে প্রতিটি মেয়াদ দুই বছর (একটি 'কংগ্রেস') রাষ্ট্রপতি হিসাবে চার বছর এবং সিনেটে ছয় বছর (তিনটি 'কংগ্রেস') থাকে।

    ... 1789 সাল থেকে মার্কিন কংগ্রেসে রোল কলের ভোটগুলি people লোকেরা কীভাবে ভোট দিয়েছে ভোটে_ ভোটার API এর মাধ্যমে অ্যাক্সেস করা হয়।

    ... লোকরা কীভাবে মার্কিন কংগ্রেসে 1789 সাল থেকে রোল কল ভোটে ভোট দিয়েছে the ভোটা এপিআই দেখুন। নির্দিষ্ট ভোটের ফলাফল পেতে ভোটের মাঠে ফিল্টার করুন ...

  • http://www.opencongress.org/api
    (কংগ্রেসের তথ্য সন্ধান করার একটি উপায় বলে মনে হচ্ছে, তবে জেলা নয়)

    এই এপিআই প্রোগ্রামারদের ওপেনকংগ্রাসের সমস্ত ডেটাতে কাঠামোগত অ্যাক্সেস সহ অফিসিয়াল বিলের তথ্য থেকে শুরু করে নিউজ এবং ব্লগের কভারেজ পর্যন্ত সমস্ত কিছুতে বিলে ব্যবহারকারীর দ্বারা প্রাপ্ত ভোটগুলি এবং আরও অনেক কিছু সরবরাহ করে ...

    এই এপিআইটি এক্সএমএল ফেরার ক্ষেত্রে ডিফল্ট। সমস্ত প্রশ্নগুলি জেএসএনকেও ফেরত দিতে পারে ...

  • https://groups.google.com/forum/?fromgroups=#!topic/opendems-discuss/CeKyi_aANaE
    (অনুরূপ প্রশ্ন, কোনও সমাধান নেই)

    আমি ওপেন ডেমস অনুসন্ধান করছি এবং এই মুহুর্তে কী উদ্ভাসিত হয়েছে এবং কী নয় তা দেখছি। আমি বিদেশে ডেমোক্র্যাটদের সাথে কাজ করি এবং তাদের সাইটের জন্য ল্যাব থেকে স্টাফ ব্যবহার করতে আগ্রহী।

    আমি দ্রুত প্রিসিনেক্ট এপিআইয়ের উপরে নজর রেখেছিলাম, যা আমার প্রয়োজনের চেয়ে কম এবং কম উভয়ই করে। খুব কম সময়ে সিডিতে ঠিকানা অনুবাদ করার কোনও উপায় হ'ল একটি আদর্শ সংস্থান (রাজ্য জেলা তথ্য প্রাপ্তিও ভাল হবে), যেহেতু ডিএর সদস্যপদটিকে গত মাসের এনওয়াই 26 রেসের মতো ঘোড়দৌড়ের পার্থক্য করা সহজ করে তুলবে ... ।

হালনাগাদ

আমি govtrack.us ওয়েবসাইটের উত্সটি দেখছি এবং 'ডোজিওকোড' ফাংশনটি কার্যকর হতে পারে।

দৃশ্য সোর্স করুন: http: //www.govtrack.us/congress/members

কারও কাছে যদি কোনও পরামর্শ না থাকে, তবে তারা যা করছে তা বন্ধ করার চেষ্টা করব।


1
আমি যে জায়গাগুলিতে সন্ধান করছি সেখানে আমি আমার প্রশ্ন আপডেট করেছি।
আর্দাভিস

এটি স্ট্যাকওভারফ্লোতে স্থানান্তরিত করা বা এটি পুনরায় ছড়িয়ে দেওয়া এবং এটি এখানে লিঙ্ক করা বোধগম্য হতে পারে, কারণ এটি একটি বৈধ, গুরুত্বপূর্ণ এবং দরকারী প্রশ্ন।
ক্রিস মোসচিনি

উত্তর:


7

আমি এটি ব্যবহার করি নি, তবে একটি দ্রুত অনুসন্ধান আমাকে সানলাইট ল্যাবগুলি থেকে কংগ্রেসের এপিআইতে নিয়ে আসে। তাদের জেলাগুলি দেখুন ডিগ্রিস্ট্রোমস ফ্রিজজিপ পদ্ধতিটি - আপনি যা খুঁজছেন তা মনে হচ্ছে। আপনি ভাল (আরও নির্ভুল) ঠিকানা geocoding নিজেকে এবং তারপর ব্যবহার ফলাফল পেতে পারে districts.getDistrictFromLatLong - আমি অনুমান চাই যে একটি প্রদত্ত পিন কোড জেলা সীমানা পার হতে পারে।


1
আপনাকে ধন্যবাদ কালেব আমি যখন অনুসন্ধান করছিলাম তখন আমি এদিকে আসিনি, মনে হচ্ছে ঠিক যা খুঁজছি তা। আমি এটিকে সমর্থন করি.
আরদাভিস

আপডেট: সানলাইট এপিআই কী পৃষ্ঠা আর কাজ করে না।
শেঠ কনেল

4

গুগল সিভিক্স এপিআই হ'ল সেরা সমাধান। একটি একক এআইপি হিট আপনাকে নির্বাচিত কর্মকর্তা এবং জেলা উভয়ই করে।

আপনি জিপিএস কোর্ডের মাধ্যমে জেলা (ল্যাট / এলএনজি) পেতে পারেন:

public async Task<GoogleCivicsResult> FetchAndParseUSDistrictAsync(
    decimal lat, decimal lng, string address = null)
{
    string googleApiKey = App.GoogleApiKey;
    string reqAddr = Uri.EscapeDataString(address ?? lat + "," + lng);
    string url = "https://www.googleapis.com/civicinfo/v2/representatives?alt=json&key={0}&address={1}";
    url = String.Format(url, googleApiKey, reqAddr);

    var req = new HttpWebRequestAsync(url);
    var data = await req.GetStringAsync();

    var result = JsonConvert.DeserializeObject<GoogleCivicsResult>(data);

    return result;
}

public class GoogleCivicsResult
{
    public Address normalizedInput { get; set; }

    public Dictionary<string, Division> divisions { get; set; }

    public Office[] offices { get; set; }

    public Official[] officials { get; set; }
}

public class Address
{
    public string line1 { get; set; }
    public string line2 { get; set; }
    public string city { get; set; }
    public string state { get; set; }
    public string zip { get; set; }
}

public class Division
{
    public string name { get; set; }

    public int[] officeIndices { get; set; }

    public Office[] offices { get; set; }
}

public class Office
{
    // President of the United States
    // United States Senate
    // United States House of Representatives FL-06
    // Governor
    // Lieutenant Governor
    // Attorney General
    // Sheriff
    // County Judge
    // Council Chair
    public string name { get; set; }

    // ocd-division/country:us/state:fl/cd:6
    // ocd-division/country:us/state:fl
    // ocd-division/country:us/state:fl/county:volusia
    public string divisionId { get; set; }

    // administrativeArea1
    public string[] levels { get; set; }

    // legislatorUpperBody
    // legislatorLowerBody
    // headOfGovernment
    // deputyHeadOfGovernment
    public string[] roles { get; set; }

    public int[] officialIndices { get; set; }
}

public class Official
{
    public string name { get; set; }
    public Address[] address { get; set; }
    public string party { get; set; }
    public string[] phones { get; set; }
    public string[] urls { get; set; }
    public string photoUrl { get; set; }
    public Social[] channels { get; set; }
    public string[] emails { get; set; }
}

public class Social
{
    public string type { get; set; }
    public string id { get; set; }
}

https://developers.google.com/civic-information/docs/v2/representatives/representativeInfoByAddress

আপনি ওপেনস্টেটস ব্যবহার করে রাজ্য-স্তরের তথ্যের জন্য অনুরূপ পেতে পারেন :

"http://openstates.org/api/v1/legislators/geo/?apikey={0}&lat={1}&long={2}";

গুগল সিভিক্স এপিআই সম্পর্কে অ্যাডেন্ডা প্রায়শই ডাউন ডাউন হয়

গুগল সিভিক্স এপিআই ল্যাট / এলএনজি সমর্থন করে কিনা তা সম্পর্কে অস্পষ্ট এবং প্রতি কয়েকমাস বা তার কয়েক মাস বা এক মাসের জন্য এটি কেবল ল্যাট / এলএনজি সমর্থন বন্ধ করে দেবে, যতক্ষণ না কেউ এটি এবং গুগল বিজ্ঞপ্তি প্রকাশ করে, বা আরও নির্দিষ্টভাবে, একজন কর্মচারী সেখানে সম্ভবত তাদের স্বেচ্ছাসেবক সময় নোটিশ ("চেলান") এ এটি নিয়ে কাজ করছে এবং এটি ঠিক করার জন্য নজর রাখছে:

https://groups.google.com/d/msg/google-civicinfo-api/0td48h7JxYA/Zhij3yQiCgAJ

যদি আপনার পরিষেবাটি সিভিক্স এপিআই ডেটাটি ক্র্যাশ হয়ে যাওয়ার প্রত্যাশা করে এবং যদি এটির জন্য সিভিকস এপিআই ডেটা দরকারী হয় তবে এটি ক্রাশ নাও হতে পারে তবে এটি একসাথে কয়েক মাস ধরে অকেজো হয়ে যাবে। সবচেয়ে সাম্প্রতিক ব্যর্থতা ছিল 2018 এর বেশিরভাগ রাজ্যের পুরো ভোটগ্রহণের সময়কাল, তাই, এটি বেশ ডাউনটাইম।

আপনি সুস্পষ্টভাবে জিওকোডিংয়ের বিপরীতে প্রতিরক্ষা খেলতে পারেন:

if (!(navigator && navigator.geolocation))
    return geoFail();

navigator.geolocation.getCurrentPosition(function (position) {
    var coords = position.coords;
    var lat = coords.latitude;
    var lng = coords.longitude;

    if (!lat || !lng)
        return geoFail();

    var geocoder = new google.maps.Geocoder;
    geocoder.geocode({ 'location': { lat: lat, lng: lng } },
            function (r, status) {
        if (status !== 'OK' || !r || !r.length) {
            loadReps(lat, lng);
            return;
        }

        var address = r[0].formatted_address;
        $('#address').val(address);
        loadReps(lat, lng, address);
    });
}, geoFail);

সুতরাং এখানে আমরা ব্যবহারকারীর অবস্থানের জন্য সাধারণ HTML5 জিজ্ঞাসা করি এবং তারা যদি না / ব্লক করে তবে আমরা তাদের "আপনার অবস্থানটি পেলাম না" বার্তাটি (জিওফাইলে সহ) দেখাই। তারপরে আমরা ল্যাব / এলএনজি পেয়েছি, তবে, গুগল সিভিকস এপিআই ত্রুটিযুক্ত তাই আমরা গুগলকে স্পষ্টভাবে ঠিকানাটির জন্য জিজ্ঞাসা করব। এটি r [0]। ফর্ম্যাটড_এড্রেস হিসাবে ফিরে আসে, যা কিছু উত্তরে গুগল আপনাকে ব্যবহারকারীদের যে অবস্থানটি সন্ধান করছে তা নিশ্চিত করার জন্য আপনাকে সেগুলি দেখানোর পরামর্শ দেয়। সুতরাং আমরা এটিকে ঠিকানা পাঠ্যবক্সে রেখেছি এবং এটি দিয়ে পাঠিয়ে দেব loadReps(lat, lng, address)

নোট করুন যে এটি সম্ভব জিওকোড কলটি ব্যর্থ হতে পারে (একটি ফ্ল্যাঙ্ক ইন্টারনেট সংযোগের কারণে সহ), তবে, কখনও কখনও গুগল সিভিকস এপিআই পুরোপুরি কার্যকর হয়, সুতরাং এই পরিস্থিতিতে এখনও ব্যবহারকারীকে কোনও ফলাফল অস্বীকার করার প্রয়োজন নেই; আমি এক্ষেত্রে যে ব্যাকএন্ডে লিখেছি তা ল্যাট / এলএনজি এবং alচ্ছিক ঠিকানা গ্রহণ করতে পারে এবং ঠিকানাটি অনুপস্থিত সহ্য করতে পারে। তারপরে এটি গুগল সিভিক্স এপিআইয়ের সাথে কথা বলার চেষ্টা করে এবং যদি এটি কিছুই না পায় তবে তার পক্ষে বাঁচতে হবে এবং ব্যবহারকারীকে নাগরিক এপিআই ভাঙ্গা বলা দরকার, দুঃখিত।

.তিহাসিক উত্তর

সানলাইট ফাউন্ডেশন * এর কংগ্রেস এপিআই কেবল ফেডারেল-কেবল কোনও রাজ্য-স্তর নয়, যদি তা আপনার পক্ষে গুরুত্বপূর্ণ। এবং [সানলাইট ফাউন্ডেশন বন্ধ হয়ে যাচ্ছে, কারণ তারা গভট্র্যাকের প্রচেষ্টাটিকে নকল করতে চায় না।

গভঃ ট্র্যাকের এপিআই * আরও সম্পূর্ণ। এগুলি /roleআপনার প্রশ্নের নিকটতম:

https://www.govtrack.us/developers/api#endpoint_role

এটি আপনাকে সমস্ত বর্তমান সিনেটর এবং হাউজ সদস্যদের এবং তাদের পরবর্তী নির্বাচন কখন হবে তা জানায়। সুতরাং আপনার একটি ফিল্টারিং বোঝা লাগবে।

রাজ্য-স্তরের সামগ্রীর জন্য আপনি ওপেনস্টেটস.আর্গ.এই চান:

http://openstates.org/api/v1/legilators/geo/?apikey= {0} & lat = {1} & দীর্ঘ = {2

https://openstates.org/

* খারাপ খবর, সব সময় বন্ধ হয়ে যায়। গনট্র্যাকের কাজের সদৃশ এড়াতে সানলাইট ফাউন্ডেশন তাদের এপিআই বন্ধ করে দেয়প্রোপাব্লিকানার কাজের সদৃশতা এড়াতে গভট্র্যাক এখন তাদের বন্ধ করে দিচ্ছে। তবে প্রোপাব্লিক্সগুলি আপনাকে কোনও অবস্থান থেকে জেলা দেবে বলে মনে হচ্ছে না:

https://projects.propublica.org/api-docs/congress-api/

সুতরাং অপেক্ষা করুন আপনি বলবেন, এটি কোনও অর্থবোধ করে না, কারণ এনপাইমাইজস শাটডাউন প্রতিনিধিত্ব প্রকল্প থেকে প্রোপাব্লিকানার প্রতিনিধিত্বকারী সাইটটি আপনাকে একটি ঠিকানা তৈরি করতে দেয় এবং জেলা জিপিএস কর্ডগুলি থেকে জেলা পেতে দেয়। এবং তারা সেই পৃষ্ঠা থেকে তাদের API এ লিঙ্ক করে link আপনাকে বোকা বানিয়েছে, কারণ এই পৃষ্ঠাটি তাদের এপিআই ব্যবহার করে না। আসলে এটি সানলাইট ফাউন্ডেশনের জেলা সন্ধানকারী এপিআই ব্যবহার করে।

কী এলোমেলো.


2
প্রোপাবলিকার একজন প্রতিনিধি পরামর্শ দিলেন আমি গুগলের সিভিক ইনফরমেশন এপিআই ( ডেভেলপার্স.কম / সিভিক-ইনফরমেশন
ডকস

1
@ কেমিউসার ধন্যবাদ - আমিও একই প্রতিক্রিয়া পেয়েছি। আপডেট উত্তর।
ক্রিস মোসচিনি ২

2

আমি বুঝতে পারি যে এই প্রশ্নটি পুরানো, তবে আমি বুঝতে পেরেছিলাম যে কেউ এখনও খুঁজছেন তাদের জন্য আমি আমার দুটি সেন্ট নিক্ষেপ করব।

প্রথমত, কিছু পটভূমি তথ্য। কংগ্রেসনাল জেলাগুলি অত্যন্ত সুনির্দিষ্ট - কেবল কোনও রাস্তায় নয়, নিজের ঠিকানাতেও। রাস্তা জুড়ে আমি এবং আমার প্রতিবেশী বিভিন্ন কংগ্রেসনাল জেলায় থাকতে পারি। এই কারণেই আপনি সঠিক জেলাতে ঠিকানাটি রাখছেন তা নিশ্চিত করার জন্য একটি ভাল জিপ + 4 কোড পাওয়া এত গুরুত্বপূর্ণ। ঠিকানার বৈধতা যাচাই করে এমন একটি সিস্টেম (যেমন স্মার্টস্ট্রিটস বা মেলিসা ডেটা বা কিউএস, ইত্যাদি) জেলাটি সঠিক কিনা তা নিশ্চিত করার জন্য আপনাকে একটি নির্ভরযোগ্য জিপ + 4 দেবে।

SmartyStreets তাদের রয়েছে LiveAddress এপিআই , যা 40 টি অন্যান্য তথ্য পয়েন্ট (geocodes, বনাম বাণিজ্যিক আবাসিক, ইত্যাদি) সহ কংগ্রেশনাল তথ্য ফেরৎ।


প্রদত্ত আইএল-04 আমি নিশ্চিত যে জিপ +4 সঠিক জেলা পেতে হবে নই। (জিওস্টসন gist.github.com/anonymous/f2e46f17275f6dbb68db এ একটি সংক্ষিপ্ত বিবরণে github.com/benbalter/congressional-dist जिल्ला/blob/gh-pages/ IL/… থেকে অনুলিপি করেছেন কারণ এটি এই মুহুর্তে উপস্থাপন করা হয়নি)।

... যদিও এটি বলে যে জিপ +4 আপনাকে একটি বিল্ডিংয়ে নিয়ে যাওয়া উচিত এবং রাস্তার কোন দিকে আপনি যাচ্ছেন তার মতো তথ্য অন্তর্ভুক্ত করে। তাই সম্ভবত, তবে তারপরে বিবেচনা করুন যে জিপ + 4 এর সেটটি যে কোনও জেলার মানচিত্রগুলি সেই জেলার এমন বিল্ডিংয়ের সংখ্যা হবে যা অতিরঞ্জিত হতে পারে।

0

মেলিসা ডেটা ঠিকানা যাচাইকরণের জন্য সরঞ্জামগুলি তৈরি করে যাতে রাজনৈতিক জেলাগুলির তথ্য অন্তর্ভুক্ত থাকে। তাদের পাবলিক এপি আছে কিনা আমি জানি না; উপরের লিঙ্কটি আপনাকে কোনও ঠিকানা চেহারা পৃষ্ঠায় নিয়ে যাবে। তারা সীমিত সংখ্যক ফ্রি লুক আপ দেয় যা সাবস্ক্রিপশন দিয়ে বাড়ানো যায় । এটি কোনও উত্পাদন অ্যাপ্লিকেশনে রাখার আগে তাদের ব্যবহারের শর্তাদি পরীক্ষা করে দেখুন।

যখন তাদের ডেটা মাসিক আপডেট হয় তবে আমি লক্ষ্য করেছি যে এর কিছুটি সাম্প্রতিক পুনর্নির্মাণকে প্রতিফলিত করে না।

অনেক রাজ্যের এই তথ্য উপলব্ধ আছে, তবে আমি সন্দেহ করি যে তাদের বাস্তবায়নে কোনও ধারাবাহিকতা রয়েছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.