2012-07-24 16 views
6

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

आप Google छवियों द्वारा संचालित live demo app देख सकते हैं। मुझे पता है कि बड़े इंजन (Google, याहू !, बिंग) के साथ यह संभव है लेकिन मुझे पता नहीं है कि Instagram इस अनुमति देगा या नहीं। क्या एपीआई प्रस्ताव से परिचित कोई भी इस पर मदद कर सकता है?

यदि यह एपीआई कि समझ में आता है के माध्यम से खोज करने के लिए संभव नहीं है। मैं सिर्फ पहले यहां जांचना चाहता था क्योंकि बहुत सारे जानकार प्रोग्रामर हैं।

उत्तर

18

सबसे पहले, और यदि आपको पता नहीं था, तो पहले से ही one similar (कम से कम) वेब ऐप है। ऐसा कहा जा रहा है, चलो उत्तर पर जाएं:

आपको get your client_id की आवश्यकता है, क्योंकि आपको इसे एपीआई (अधिक जानकारी here) पर कॉल करने की आवश्यकता है। आप this endpoint को कॉल कर किया जाना चाहिए (: पी इंस्टाग्राम के एपीआई अंतिमबिंदुओं here बारे में अधिक जानकारी आप इस पढ़ना चाहिए):

https://api.instagram.com/v1/tags/SEARCH-TAG/media/recent?client_id=CLIENT-ID&callback=YOUR-CALLBACK 
बेशक

, एक तुम से पहले हो गया और YOUR-CALLBACK साथ उपयोगकर्ता इनपुट के साथ SEARCH-TAG, CLIENT-ID बदल आपके कॉलबैक फ़ंक्शन का नाम।

इस कॉल के जवाब JSONP में आता है और यह (एपीआई पेज से लिया) की तरह दिखता है:

{ 
    "data": [{ 
     "type": "image", 
     "filter": "Earlybird", 
     "tags": ["snow"], 
     "comments": { 
      "data": [{ 
       "created_time": "1296703540", 
       "text": "Snow", 
       "from": { 
        "username": "emohatch", 
        "username": "Dave", 
        "id": "1242695" 
       }, 
       "id": "26589964" 
      }, 
      { 
       "created_time": "1296707889", 
       "text": "#snow", 
       "from": { 
        "username": "emohatch", 
        "username": "Emo Hatch", 
        "id": "1242695" 
       }, 
       "id": "26609649" 
      }], 
      "count": 3 
     } 
     "caption": { 
      "created_time": "1296703540", 
      "text": "#Snow", 
      "from": { 
       "username": "emohatch", 
       "id": "1242695" 
      }, 
      "id": "26589964" 
     }, 
     "likes": { 
      "count": 1, 
      "data": [{ 
       "username": "mikeyk", 
       "full_name": "Mike Krieger", 
       "id": "4", 
       "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_1242695_75sq_1293915800.jpg" 
      }] 
     },   
     "link": "http://instagr.am/p/BWl6P/", 
     "user": { 
      "username": "emohatch", 
      "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_1242695_75sq_1293915800.jpg", 
      "id": "1242695", 
      "full_name": "Dave" 
     }, 
     "created_time": "1296703536", 
     "images": { 
      "low_resolution": { 
       "url": "http://distillery.s3.amazonaws.com/media/2011/02/02/f9443f3443484c40b4792fa7c76214d5_6.jpg", 
       "width": 306, 
       "height": 306 
      }, 
      "thumbnail": { 
       "url": "http://distillery.s3.amazonaws.com/media/2011/02/02/f9443f3443484c40b4792fa7c76214d5_5.jpg", 
       "width": 150, 
       "height": 150 
      }, 
      "standard_resolution": { 
       "url": "http://distillery.s3.amazonaws.com/media/2011/02/02/f9443f3443484c40b4792fa7c76214d5_7.jpg", 
       "width": 612, 
       "height": 612 
      } 
     }, 
     "id": "22699663", 
     "location": null 
    }, 
    ... 
    ] 
} 

तो फिर तुम सिर्फ इस प्रतिक्रिया की प्रक्रिया और क्या करने की जरूरत है जो कुछ भी आप इसके साथ चाहते हैं :)

+0

वाह यह एक अविश्वसनीय रूप से विस्तृत प्रतिक्रिया धन्यवाद है! मेरे पास कोड पर जाने के लिए अभी समय नहीं है, लेकिन आपने मुझे एक कामकाजी उदाहरण से जोड़ा जो कि सही है। 'SEARCH-TAG' को बदलते समय त्वरित प्रश्नों के लिए मैं उपयोगकर्ता इनपुट कैसे जोड़ूं? क्या यह सिर्फ यूआरआई एन्कोड किया जाएगा ताकि "बेबी पिल्ला" की खोज "बेबी + पिल्ला" हो जाए? – Jake

+1

@JakeRocheleau, मैं कुछ परीक्षण किए गए और ऐसा लगता API जैसे एक से अधिक टैग स्वीकार करता है नहीं करता है। इसके बाद मैंने इसकी खोज की और वास्तव में, एपीआई प्रति टैग एक टैग तक सीमित है ([लिंक] (http://osqa.statigr.am/questions/653/multiple-tag-search), [लिंक] (https : //groups.google.com/forum/ ?ggroups #! विषय/instagram-api-developers/VJPdeDs9tIA)):/"बेबी + पिल्ला" या "बेबी% 20puppy" जैसे कुछ कुछ भी वापस नहीं आएगा। इसलिए, अपने ऐप में एकाधिक टैगिंग का समर्थन करने के लिए, आपको उपयोगकर्ता इनपुट को विभाजित करने और कई अनुरोध करने की आवश्यकता हो सकती है, जो थोड़ा कठिन है। इसके साथ शुभकामनाएं :) – scumah

+0

अद्यतन के रूप में: इस समान एंडपॉइंट को अब https://www.instagram.com/developer/endpoints/tags/ – igneosaur

3

एक महत्वपूर्ण पक्ष ध्यान दें: instagram घंटे के लिए अधिकतम 5000 प्रश्नों की अनुमति देता है। यदि आप ऐप आईडी के साथ क्वेरी का उपयोग करते हैं। आप इस सीमा को बढ़ाने के लिए चाहते हैं, तो आप को प्रमाणित करने के लिए अपने उपयोगकर्ताओं को पूछ सकते हैं। फिर आप उपयोगकर्ता पहुंच टोकन पास कर सकते हैं। उम्मीद है कि यह

+1

क्वेरी करने के लिए ACCESS_TOKEN की आवश्यकता क्यों है? आप सीमा को _lower_ क्यों करना चाहते हैं? – user83039

+0

@ user83039 आप प्रति घंटे अधिक प्रश्नों की जरूरत नहीं है, अगर आपके आवेदन अधिक जरूरत नहीं है। – kinduff