2012-04-07 12 views
5

मुझे उन प्रश्नों को चलाने की आवश्यकता है जो उपयोगकर्ताओं की सूची लौटते हैं, साथ ही उन उपयोगकर्ताओं के डेटा के साथ। मान लीजिए कि मैं एक व्यक्ति पर विचार करता हूं और मैं जानना चाहता हूं कि उसके सभी अनुयायी कहां हैं। यह प्रश्न:ट्विटर एपीआई में बैच प्रश्न?

http://api.twitter.com/1/followers/ids.json?screen_name={screen_name} 

व्यक्ति के अनुयायियों के उपयोगकर्ता आईडी की एक सूची देता है। इसके बाद मैं प्रत्येक उपयोगकर्ता आईडी को इस क्वेरी में प्लग कर सकता हूं:

http://api.twitter.com/1/users/lookup.json?user_id={user_id} 

स्थान सहित उपयोगकर्ता के बारे में जानकारी प्राप्त करने के लिए। लेकिन इसका मतलब है कि अगर व्यक्ति के 1000 अनुयायी हैं, तो मुझे दूसरी बार 1000 बार कॉल करना होगा। "जुड़ें" (जैसा कि इसे एसक्यूएल में कहा जाएगा) करना बेहतर होगा, जहां हम अनुयायियों और उनके स्थानों के लिए पूछ सकते हैं, और इसे एक प्रश्न में कर सकते हैं, लेकिन मैं यह नहीं देख सकता कि यह कैसे करें।

क्या यह संभव है? साथ ही, उपयोगकर्ता लुकअप के लिए पूछते समय, यह निर्दिष्ट करना संभव है कि आप केवल एक फ़ील्ड चाहते हैं, न कि पूरे उपयोगकर्ता रिकॉर्ड (जैसे के लिए एसक्यूएल में select * के बजाय पूछना)?

उत्तर

7

आप क्वेरी में एकाधिक user_id एस की गणना कर सकते हैं। उदाहरण:
http://api.twitter.com/1/users/lookup.xml?user_id=351927492,8602462,132533067,16984020,131217651,125764179

लेकिन आप 100 मूल्यों (नाम, आईडी) क्वेरी के साथ करने के लिए सीमित कर दिया, तो 1000 अनुयायियों के साथ उपयोगकर्ता के लिए आप 10 प्रश्नों करना है।

अद्यतन एपीआई के 1.1 संस्करण के लिए सही URL होगा http://api.twitter.com/1.1/users/lookup.json?user_id=351927492,8602462,132533067,16984020,131217651,125764179

+0

धन्यवाद। यह काफी शामिल नहीं है, लेकिन यह 1001 से 11 तक प्रश्नों की संख्या को कम करता है, इसलिए मुझे लगता है कि यह काफी अच्छा है। क्या आप अन्य प्रश्नों के बारे में कुछ भी जानते हैं, उपयोगकर्ताओं को ब्याज के क्षेत्रों में देखने के परिणामों को सीमित करते हैं? –

+0

@ जोशुआ फ्रैंक जैसा कि मुझे पता है, इस तरह की संभावना ट्विटर एपीआई में निर्मित नहीं है, लेकिन चूंकि जेएसओएन मैनिपुलेशन अधिकांश भाषाओं में बहुत आसान है, इसलिए यह कोई समस्या नहीं होगी (सिवाय इसके कि यदि आप डाउनलोड किए गए डेटा की मात्रा के बारे में जानते हैं)। –

+0

मुझे समझ में नहीं आता कि आपका क्या मतलब है। परिणामस्वरूप आप JSON प्राप्त करते हैं, लेकिन यदि वे वास्तव में आपकी आवश्यकता से अधिक डेटा भेजते हैं, तो यह बैंडविड्थ को बर्बाद कर देता है। सहमत हैं, परिणाम से आपको आवश्यक डेटा प्राप्त करना मुश्किल नहीं होगा, लेकिन बेहतर होगा कि आपको आवश्यकता से ज्यादा पूछना न पड़े। –

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