लुकअप सिटी और स्टेट बाय जिप गूगल जियोकोड एपी [बंद]


83

मैं मूल रूप से एक ज़िपकोड के भीतर शहर और राज्य की एक सूची प्राप्त करना चाहता हूं। क्या Google का जियोकोड एपीआई ऐसा करने में सक्षम है? मैंने दस्तावेज़ीकरण देखने की कोशिश की है, लेकिन जानकारी को बहुत अधिक पाया है।

किसी भी सहायता की सराहना की जाएगी। यदि इस तरह के कार्य को पूरा करने की एक और विधि है, तो कृपया मुझे बताएं।

धन्यवाद

संपादित करें: मैं शहर और राज्य को पुनः प्राप्त करने में सक्षम था: http://maps.google.com/maps/geo?output=xml&q=14606 लेकिन क्या इसके खिलाफ कोई सीमा है?


आप यहां मैप्स जियोकोडिंग रीस्ट एपीआई का उपयोग कर सकते हैं । प्रोजेक्ट बनाएं और REST क्रेडेंशियल्स प्राप्त करें। उनके जाने के लिए 1 घंटे तक प्रतीक्षा करें (मुझे पहली बार एक InvalidCredentials त्रुटि दिखाई गई है) और फिर कॉल करें उदा geocoder.cit.api.here.com/6.2/geocode.json?PostalCode=2400&country=Denmark&app_id={APP_ID}&app_code={APP_CODE}&gen=9(आप पते के हिस्से प्रदान कर सकते हैं )
aexl

जवाबों:


111

जियोकोडिंग एपीआई का उपयोग करें

उदाहरण के लिए, ज़िप 77379 देखने के लिए इस तरह एक अनुरोध का उपयोग करें:

https://maps.googleapis.com/maps/api/geocode/json?address=77379&sensor=true&key=YOUR_GOOGLE_PLATFORM_API_KEY


10
आप सेंसर मतलब = गलत ?
Rup

19
"नोट: जियोकोडिंग एपीआई का उपयोग केवल एक Google मानचित्र के साथ किया जा सकता है, उन्हें बिना मानचित्र पर प्रदर्शित किए जियोकोडिंग परिणाम निषिद्ध है।"
एंडी रे

2
@ रूप सेंसर की आवश्यकता नहीं है
डेजेल

2
यह Google पर पहली हिट है जब "शहर ज़िप कोड एपी" को
गुगली किया

6
@KevinLeary result_type डाक कोड तक सीमित नहीं है। Google के जियोकोडर सड़क पता संख्याओं के लिए ज़िप कोड की गलती करेंगे (ज़िप 89100 की कोशिश करें)। इसके बजाय प्रारूप का उपयोग करने के लिए maps.googleapis.com/maps/api/geocode/… यहाँ प्रलेखित के रूप में है: Developers.google.com/maps/documentation/geocoding/…
माइक कॉर्मेंडी

54

मुझे वेब आधारित API के साथ ऐसा करने के कुछ तरीके मिले। मुझे लगता है कि यूएस पोस्टल सर्विस सबसे सटीक होगी, क्योंकि ज़िप कोड उनकी चीज हैं, लेकिन Ziptastic बहुत आसान लगता है।

यूएस पोस्टल सर्विस HTTP / XML एपीआई का उपयोग करना

यूएस पोस्टल सर्विस वेबसाइट पर इस पेज के अनुसार जो अपने XML आधारित वेब एपीआई , विशेष रूप से इस पीडीएफ दस्तावेज़ की धारा 4.0 (पेज 22) का दस्तावेजीकरण करते हैं , उनके पास एक URL है जहां आप एक XML अनुरोध भेज सकते हैं जिसमें 5 अंकों का ज़िप कोड होगा और वे करेंगे एक्सएमएल दस्तावेज़ के साथ संबंधित शहर और राज्य से संबंधित उत्तर दें।

उनके प्रलेखन के अनुसार, यहाँ आप क्या भेजेंगे:

http://SERVERNAME/ShippingAPITest.dll?API=CityStateLookup&XML=<CityStateLookupRequest%20USERID="xxxxxxx"><ZipCode ID= "0"><Zip5>90210</Zip5></ZipCode></CityStateLookupRequest>

और यहाँ आपको क्या मिलेगा:

<?xml version="1.0"?> 
<CityStateLookupResponse> 
    <ZipCode ID="0"> 
        <Zip5>90210</Zip5> 
        <City>BEVERLY HILLS</City> 
        <State>CA</State> 
    </ZipCode> 
</CityStateLookupResponse>

यूएसपीएस करता है आवश्यकता है कि आप इससे पहले कि आप एपीआई का उपयोग कर सकते हैं उन लोगों के साथ रजिस्टर, लेकिन, जहाँ तक मैं बता सकते हैं, वहाँ पहुँच के लिए कोई शुल्क नहीं है। वैसे, उनके एपीआई में कुछ अन्य विशेषताएं हैं: आप पता मानकीकरण और ज़िप कोड लुकअप कर सकते हैं, साथ ही ट्रैकिंग, शिपिंग, लेबल, आदि का पूरा सूट।

Ziptastic HTTP / JSON API ( अब समर्थित नहीं ) का उपयोग करना

अपडेट: 13 अगस्त, 2017 तक, Ziptastic अब एक भुगतान किया गया एपीआई है और यहां पाया जा सकता है

यह एक बहुत नई सेवा है, लेकिन उनके दस्तावेज़ीकरण के अनुसार, ऐसा लगता है कि आपको केवल इतना करना होगा कि http://ziptasticapi.com को GET अनुरोध भेजें , जैसे:

GET http://ziptasticapi.com/48867

और वे एक JSON ऑब्जेक्ट वापस करेंगे:

{"country": "US", "state": "MI", "city": "OWOSSO"}

वास्तव में, यह काम करता है। आप कुछ ऐसा करके कमांड लाइन से इसका परीक्षण कर सकते हैं:

curl http://ziptasticapi.com/48867 

8
Ziptastic सिफारिश के लिए प्रमुख प्यार। <3!
सइयोजोज

5
जब तक आप मेलिंग से संबंधित गतिविधियों के लिए उनके एपीआई का उपयोग नहीं कर रहे हैं, तब तक यूएस पोस्टल सर्विस एक्सेस के आपके अनुरोध को अस्वीकार कर देगी। कम से कम, यह मेरा अनुभव रहा है।
ईज

1
@eaj यह सच है: "एड्रेस वैलिडेशन एपीआई का उपयोग केवल यूएसपीएस शिपिंग या मेलिंग सेवाओं के साथ संयोजन के रूप में किया जा सकता है।"
ड्रैगन.स्टेपानोविक

2
Ziptastic अब समर्थित नहीं है। इसका उपयोग अब नहीं किया जाना चाहिए।
vaindil

2
@RationalRabbit: मैंने एक अद्यतन प्रस्तुत किया कि Ziptastic अब एक भुगतान किया गया एपीआई है।
रिचर्ड जोन्स

15
function getCityState($zip, $blnUSA = true) {
    $url = "http://maps.googleapis.com/maps/api/geocode/json?address=" . $zip . "&sensor=true";

    $address_info = file_get_contents($url);
    $json = json_decode($address_info);
    $city = "";
    $state = "";
    $country = "";
    if (count($json->results) > 0) {
        //break up the components
        $arrComponents = $json->results[0]->address_components;

        foreach($arrComponents as $index=>$component) {
            $type = $component->types[0];

            if ($city == "" && ($type == "sublocality_level_1" || $type == "locality") ) {
                $city = trim($component->short_name);
            }
            if ($state == "" && $type=="administrative_area_level_1") {
                $state = trim($component->short_name);
            }
            if ($country == "" && $type=="country") {
                $country = trim($component->short_name);

                if ($blnUSA && $country!="US") {
                    $city = "";
                    $state = "";
                    break;
                }
            }
            if ($city != "" && $state != "" && $country != "") {
                //we're done
                break;
            }
        }
    }
    $arrReturn = array("city"=>$city, "state"=>$state, "country"=>$country);

    die(json_encode($arrReturn));
}

आपके कोड के कुछ
Kamlesh

6

कुछ महीने पहले, मुझे अपनी एक परियोजना के लिए समान आवश्यकता थी। मैंने इसके लिए थोड़ा खोज किया और निम्नलिखित समाधान का पता लगाया। यह एकमात्र समाधान नहीं है, लेकिन मैंने इसे सरल में से एक के लिए पाया

पर webservice का उपयोग करें Http://www.webservicex.net/uszip.asmx
विशेष रूप से GetInfoByZIP()विधि।

आप किसी भी ज़िपकोड द्वारा क्वेरी कर पाएंगे ( ex: 40220) और आपके पास निम्नलिखित के रूप में एक प्रतिक्रिया होगी ...

<?xml version="1.0" encoding="UTF-8"?>
 <NewDataSet>
  <Table>
   <CITY>Louisville</CITY> 
   <STATE>KY</STATE> 
   <ZIP>40220</ZIP> 
   <AREA_CODE>502</AREA_CODE> 
   <TIME_ZONE>E</TIME_ZONE> 
  </Table> 
</NewDataSet>

उम्मीद है की यह मदद करेगा...

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.