2015-10-02 15 views
11

मैं एक ऐसे सिस्टम पर काम कर रहा हूं जिसका अंत उपयोगकर्ता छोटे और मध्यम व्यापार मालिक हैं। इस सुविधा का लक्ष्य चित्रों (रीयल-टाइम में) प्राप्त करना है जो अन्य Instagram पर पोस्ट करते हैं जिन्हें उनके व्यावसायिक स्थान से टैग किया जाता है। ध्यान दें कि यह उन चित्रों से अलग है जो व्यवसाय खाते के साथ @ -गैग किए गए हैं (यानी हम this feed चाहते हैं, this feed नहीं)।हम अपने ग्राहकों के लिए रीयल-टाइम इंस्टाग्राम स्थान नोटिफिकेशन कैसे प्राप्त कर सकते हैं?

मैं here दस्तावेज रीयल-टाइम सदस्यता प्रणाली का उपयोग करने की योजना बना रहा था क्योंकि यह बताता है कि हम किसी स्थान आईडी की सदस्यता ले सकते हैं और उस स्थान पर नए मीडिया के बारे में अधिसूचनाएं प्राप्त कर सकते हैं। हमने इसे बाहर निकाला और तुरंत विफल होना शुरू कर दिया क्योंकि 30 सब्सक्रिप्शन की एक अप्रकाशित सीमा है (मुझे लगता है कि इसे बनाने से पहले हमें और अधिक गुगल करना चाहिए था)।

यह मूल रूप से उसी समस्या को here रेखांकित किया गया है लेकिन यह बातचीत वास्तव में पुरानी है और मुझे यकीन नहीं है कि अंतिम लक्ष्य बिल्कुल वही है क्योंकि प्रस्तावित समाधान मेरी मदद नहीं करेंगे।

पर्याप्त सदस्यता प्राप्त करने के लिए अधिक एप्लिकेशन पंजीकृत करने के लिए बहुत सारे ग्राहक खाते हैं (हमें हजारों ऐप्स पंजीकृत करना होगा)। हम उम्मीद कर रहे थे कि हम अधिक सब्सक्रिप्शन बनाने के लिए ओएथ 2 वर्कफ़्लो के माध्यम से प्राप्त Instagram उपयोगकर्ता के एक्सेस टोकन का उपयोग कर सकते हैं, लेकिन इसके साथ मेरे प्रयोगों को या तो बाहर नहीं किया गया है। मुझे पता है कि अन्य लोगों ने स्थान सदस्यता के बजाय बड़ी भौगोलिक क्षेत्र सदस्यता का उपयोग किया है, लेकिन यह हमारे लिए पर्याप्त रूप से पर्याप्त नहीं होगा।

मैं निराश और इस समस्या से उलझन में हूँ क्योंकि:

  1. ऐसा लगता है कि अन्य अनुप्रयोगों पैमाने कि 30 सदस्यता की सीमा फिट नहीं हैं पर वास्तविक समय में इन चित्रों को हो रही है।
  2. मुझे कल्पना नहीं है कि कई उपयोग के मामले प्रति आवेदन 30 सदस्यता एक उपयोगी सुविधा होगी।

क्या किसी के पास कोई कामकाज है? क्या आवेदन प्रमाण-पत्रों के बजाय Instagram उपयोगकर्ता प्रमाण-पत्रों का उपयोग करने का कोई तरीका है? क्या मुझे नियमित रूप से स्थान फ़ीड को मतदान करना होगा और मेरी वास्तविक समय आकांक्षाओं को खत्म करना होगा?

उत्तर

0

अपने प्रश्नों के उत्तर:

वहाँ कुछ वैकल्पिक हल के लिए web-API है: अपने डाटाबेस के लिए अपने सभी links और लिखने पार्स डेटा को अद्यतन cronjobs। प्लस: API applications की आवश्यकता नहीं है। माइनस: कभी-कभी वेब-एपीआई परिवर्तन (अनुरोध और/या प्रतिक्रियाएं)।

आप स्वचालित रूप से प्रत्येक क्लाइंट के लिए आवेदन भी पंजीकृत कर सकते हैं, उन्हें डीबी में जोड़ सकते हैं, रीयल-टाइम अपडेट की सदस्यता ले सकते हैं। और फिर अपडेट प्राप्त करें।

CLIENT-ID और CLIENT-SECRET के बजाय access-token का उपयोग करने के तरीके नहीं हैं।

बस याद रखें, "Real-time" photo updates वास्तव में real-time (संतुलन प्रणाली इत्यादि) नहीं है (दस्तावेज़ीकरण से: You should build your system to accept multiple update objects per payload) इसलिए 1 मिनट अपडेट पर्याप्त है।

युपीडी

शायद मदद, शायद आप पहले से ही तेजी लाने के लिए इस ग्रे तरीका पता है।

आप web-API के साथ स्थान के माध्यम से मीडिया प्राप्त करने के लिए सीधा लिंक का उपयोग कर सकते हैं। यह सबसे आसान है। XHR request उत्पन्न करने के लिए आपको कुकीज़ से csrftoken की आवश्यकता है। Csrftoken अनधिकृत उपयोगकर्ता से हो सकता है। request विवरण में आप Google क्रोम के Network टैब में देख सकते हैं।

सरल उदाहरण: मापदंडों q साथ https://instagram.com/query/ और ref को POST क्वेरी (उदाहरण में उनके मूल्यों को समझाने के लिए urldecoded हैं):

q=ig_location(237630908){media.after(20000000000000000000000,2){nodes{id,display_src,thumbnail_src}}}&ref=locations::show 

Content-typeapplication/x-www-form-urlencoded; charset=UTF-8 होना चाहिए। XHR request के लिए

वेब हेडर:

User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36 
Accept: */* 
Accept-Language: en-US;q=0.6,en;q=0.4 
Referer: https://instagram.com/explore/locations/237630908/ 
Origin: https://instagram.com 
X-Instagram-AJAX: 1 
X-Requested-With: XMLHttpRequest 
X-CSRFToken: e4e1e1eddd67b2b50b6d8ae7b49e01c0 
Cookie: csrftoken=e4e1e1eddd67b2b50b6d8ae7b49e01c0 
Content-type: application/x-www-form-urlencoded; charset=UTF-8 

(csrftoken हेडर उदाहरण randomize है में, उसका उपयोग नहीं करते)

यह भी अक्सर उपयोग न करें, इंस्टाग्राम कुछ समय कुछ वेब समारोह को निष्क्रिय आईपी ​​द्वारा, csrftoken परिवर्तनों को आजमाएं।

और एक जवाब है:

{ 
    status: "ok", 
    media: { 
     nodes: [ 
     { 
      thumbnail_src: "https://scontent-frt3-1.cdninstagram.com/hphotos-xaf1/t51.2885-15/s640x640/sh0.08/e35/c0.135.1080.1080/12142408_1499221190404489_557984803_n.jpg", 
      id: "1104470761628620590", 
      display_src: "https://scontent-frt3-1.cdninstagram.com/hphotos-xaf1/t51.2885-15/e35/12142408_1499221190404489_557984803_n.jpg" 
     }, 
     { 
      thumbnail_src: "https://scontent-frt3-1.cdninstagram.com/hphotos-xaf1/t51.2885-15/s640x640/sh0.08/e35/c0.135.1080.1080/12139611_1663826773904632_2063764196_n.jpg", 
      id: "1102282973026047789", 
      display_src: "https://scontent-frt3-1.cdninstagram.com/hphotos-xaf1/t51.2885-15/e35/12139611_1663826773904632_2063764196_n.jpg" 
     } 
     ] 
    } 
} 
+0

जवाब CnapoB के लिए धन्यवाद। हम पहले ही क्रॉन नौकरियों का मार्ग पार कर चुके हैं लेकिन यह दुर्भाग्यपूर्ण है क्योंकि यह रीयलटाइम के पास कहीं भी नहीं है। हमने प्रत्येक उपयोगकर्ता के लिए क्लाइंट एप्लिकेशन पंजीकृत करने के बारे में सोचा है, लेकिन हमें हजारों ऐप्स का उपयोग करना होगा। मैं कल्पना नहीं कर सकता कि Instagram हमें ऐसा करने देगा। और अगर उन्होंने ऐसा किया तो ऐसा लगता है कि मुझे इसे स्वचालित रूप से करने के लिए कैप्चा के आसपास जाना होगा। एक बार फिर धन्यवाद। –

+0

आपका स्वागत है। कृपया उत्तर के यूपीडी देखें, यह मददगार हो सकता है। – CnapoB

+0

@ टोनीबाथगेट मैं उल्लेख भूल गया। माफ़ कीजिये। कृपया उत्तर के यूपीडी देखें, यह मददगार हो सकता है। – CnapoB

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

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