2011-06-06 13 views
6

मैं Google's Geocoding API का उपयोग कर मुक्त फॉर्म पता डेटा संसाधित करने के लिए उपयोग कर रहा हूं और परिणाम (subpremise, administrative_area_level_2 इत्यादि) को समझने की कोशिश कर रहा हूं। इस बिंदु पर मुझे केवल अमेरिका में पते में दिलचस्पी है, और परिणाम सड़क के पते, शहर और राज्य कोड के रूप में प्रारूपित करना चाहते हैं। राज्य कोड सीधा लगता है (administrative_area_level_1), लेकिन अन्य अधिक अस्पष्ट हैं। क्या शहर locality या sublocality या दोनों या इससे भी अधिक है? सड़क का पता लग रहा है जैसे यह अन्य क्षेत्रों के संयोजनों की संख्या हो सकता है।Google जियोकोडिंग एपीआई परिणामों की भावना बनाना

आदर्श रूप में, मैं केवल formatted_address लेना चाहता हूं, शहर, राज्य, ज़िप और देश कोड को बंद करना चाहता हूं, और मेरे "सड़क पते" के रूप में क्या बचा है। क्या इन सभी क्षेत्रों को संभालने के लिए कम से कम अधिकांश मामलों (नियमित पते, इकाई संख्याओं के साथ पते इत्यादि) के लिए कोई दिशानिर्देश या सिफारिशें हैं?

उत्तर

1

documentation लगता है कि विभिन्न क्षेत्रों का अर्थ स्पष्ट रूप से क्या है।

आपने कहा है कि आप किस भाषा में काम कर रहे हैं, लेकिन मुझे लगता है कि यह help होगा।

+0

मैं आईओएस ऐप के लिए उद्देश्य-सी में काम कर रहा हूं, लेकिन मेरा सवाल एपीआई के बारे में है। दस्तावेज प्रत्येक फ़ील्ड के लिए एक विवरण देता है, लेकिन मेरी समस्या मैपिंग मानक यूएस पता प्रारूप पर वापस मैप कर रही है। दूसरे शब्दों में, ऐसा लगता है जैसे अमेरिकी शहर हमेशा 'इलाके' क्षेत्र में जाएंगे, लेकिन यह अभी भी संदिग्ध है। 'street_address' मेरे परीक्षण अनुरोधों के जवाब में प्रकट नहीं होता है, और शेष फ़ील्ड से वैध सड़क पता बनाने का कोई स्पष्टीकरण नहीं है। – jrdioko

1

मैं खोज पृष्ठों में Nearlots.com पर रिवर्स जियोकोडिंग कर रहा हूं। असल में, उपयोगकर्ता मानचित्र पर कहीं भी मार्कर छोड़ देता है और मैं एक खोज बॉक्स में एक पता मुद्रित करता हूं।

मैं बस 'formatted_address' प्रिंट कर रहा हूं और अगर वहां नहीं है तो छोड़ देना। यह आपको ऐसा कुछ देगा: "275-2 9 1 बेडफोर्ड Ave, ब्रुकलिन, एनवाई 11211, यूएसए"। यह पर्याप्त से अधिक है - आप अंत में संयुक्त राज्य अमेरिका को हमेशा बाहर निकाल सकते हैं।

+0

'formatted_address' करीब है, लेकिन मुझे इसे तीन अलग-अलग फ़ील्ड में विभाजित करने की आवश्यकता है: सड़क का पता, शहर और राज्य कोड। अल्पविरामों पर तोड़ना उतना करीब है जितना मैं प्राप्त करने में सक्षम हूं, लेकिन मुझे लगता है कि 'formatted_address' के प्रारूप पर कोई गारंटी नहीं है। – jrdioko

0

मुझे लगता है कि आपको सड़क के पते के लिए 'मार्ग' का उपयोग करने की आवश्यकता है।

मैं एक ही सेवा का उपयोग करता हूं और अपने अनुभव 'मार्ग' से हमेशा सड़क के पते के बराबर होता है, भले ही स्थान वास्तव में सड़क नहीं है!

मुझे लगता है कि आप पहले से ही निर्धारित कर चुके हैं कि शहर के नाम को कैसे समझें। आदि। यह वही दृष्टिकोण है जो मैं लेता हूं; कुछ अलग-अलग स्थानों के लिए विभिन्न प्रकार के एपीआई परिणामों पर नज़र डालें और देखें कि कौन सा क्षेत्र आपको सबसे संगत परिणाम देता है।

+0

'मार्ग' में सड़क के पते की शुरुआत में संख्या शामिल नहीं है, जो 'street_number' में है। और मेरे परीक्षण इकाई संख्याओं और सड़क के अन्य हिस्सों में अन्य क्षेत्रों में हवाएं बढ़ती हैं, इसलिए 'मार्ग' एक पूरा पता नहीं है। – jrdioko

+0

क्षमा करें मेरा मतलब था कि 'मार्ग' में घर नंबर को छोड़कर सड़क NAME शामिल है। मैंने पाया कि सड़क का नाम मुख्य रूप से मेरे देश में 'मार्ग' में था। – Mullins

7
  • गली का पता street_number और route है
  • शहर है locality
  • राज्य administrative_area_level_1
  • ज़िप है postal_code
  • देश है country

नोट गूगल इकाई के किसी भी प्रकार पर ध्यान नहीं देता है कि है संख्या (जैसे 'Apt 13A')। आपको इसे अपने आप में जोड़ना होगा।

geocoder के माध्यम से अपने डेटा का एक नमूना चलाना और परिणामों की जांच करना मैन्युअल रूप से पुष्टि करना चाहिए कि आपको जो चाहिए वह आपको मिल रहा है।

+1

वैसे यह इकाई संख्या को नहीं छोड़ता है, इसमें यह शामिल है (आम तौर पर मैंने जो देखा है उससे 'subpremise' में)। मैं अधिकांश मामलों के माध्यम से नमूना चला सकता हूं और हिट कर सकता हूं, लेकिन मुझे उम्मीद थी कि सभी या लगभग सभी पते सही होने के लिए कुछ बेहतर तरीका होगा (भले ही उनके पास 'मंजिल' या 'कमरा' या' आधार 'हो) । – jrdioko

+0

एपीआई से लौटाई गई जगह ऑब्जेक्ट को सही करें जिसमें 'सबप्रमीज' मान शामिल है जिसमें यूनिट नंबर (ऑस्ट्रेलियाई पता का उपयोग करके परीक्षण किया गया है) शामिल है। –

0

इस पर काम करने के कई घंटों के बाद, मैं लगातार फ्लैट/कमरे/उप-आधार निकालने में सक्षम नहीं था। विशेष रूप से इसे अलग करने में सक्षम होने के मुकाबले यह जानकारी अधिक महत्वपूर्ण थी, इसलिए मैं इसका उपयोग करके इसके आसपास हो गया।

var componentForm = { 
    locality: 'long_name', 
    administrative_area_level_1: 'short_name', 
    country: 'long_name', 
    postal_code: 'short_name' 
}; 

function fillInAddress(place) { 
    for (var component in componentForm) { 
     document.getElementById(component).value = ''; 
     document.getElementById(component).disabled = false; 
    } 
    for (var i = 0; i < place.address_components.length; i++) { 
     var addressType = place.address_components[i].types[0]; 
     if (componentForm[addressType]) { 
      var val = place.address_components[i][componentForm[addressType]]; 
      document.getElementById(addressType).value = val; 
     } 
    } 
    var parts = $("#searchField").val().split(","); 
    $("#street_number").val(parts[0]); 
} 

मैंने ऑटो पूर्ण से सामान्य जानकारी को निकाला है, हालांकि "street_number" और "मार्ग" छोड़ा गया है। फिर चयन के बाद ऑटो पूर्ण मूल्य पर एक साधारण विभाजन किया और पहले हिस्से का उपयोग किया, सड़क के पते को पूरी तरह से वापस कर दिया (फैक्ट्री/फ्लैट/आधार और सड़क का नाम सहित)।

इस काम के आसपास मुझे ऐसे परिणाम दिए गए जो मुझे चाहिए जो अच्छी तरह से काम करते हैं। सौभाग्य!

संबंधित मुद्दे