2008-09-19 9 views
21

क्या किसी ने इससे पहले किया है? ऐसा लगता है कि एक webservice होना चाहिए लेकिन मुझे एक नहीं मिल रहा है। मैं व्यक्तिगत उपयोग के लिए एक आवेदन लिख रहा हूं जो आईएमडीबी से मूल जानकारी दिखाएगा।आईएमडीबी से कनेक्ट

उत्तर

14

कोई webservice उपलब्ध नहीं है।

लेकिन आपकी ज़रूरतों के अनुरूप हर भाषा में पर्याप्त HTML स्क्रैपर्स लिखे गए हैं!

मैंने कुछ निजी परियोजनाओं में .NET 3.5 Imdb Services opensource project का उपयोग किया है।

1 मिनट गूगल परिणाम:

+0

धन्यवाद मैं विश्वविद्यालय में अपने प्रोजेक्ट जॉब को सरल बनाने के लिए इसकी तलाश कर रहा हूं :) – nXqd

8

केवल "API" आईएमडीबी प्रकाशित करती युक्त plain-text data files का एक सेट है कलाकारों, निर्देशकों, फिल्मों आदि की स्वरूपित सूचियां। आपको अपने स्वयं के पार्सर को लिखने की आवश्यकता होगी जब तक कि किसी ने जारी नहीं किया हो आपकी भाषा के लिए ई। "Imdb api" और "imdb parser" जैसी Google खोजों को आज़माएं।

एक स्क्रीन स्क्रैपर उपयोगी हो सकता है, लेकिन वे विशेष रूप से prohibit scrapers उपयोग की शर्तों में हैं।

+0

स्क्रैपर्स का उपयोग करने के लिए यह प्रतिबंधित है, लेकिन क्योंकि यह व्यक्तिगत उपयोग के लिए है, इसलिए मैं इसे "शो" नहीं बनाऊंगा डाट "। –

4

आईएमडीबी स्क्रैपर्स को प्रतिबंधित करता है, और थोड़ी देर में पृष्ठ लेआउट को हर बार बदलता है, इसलिए एचटीएमएल पार्सिंग एक विकल्प है, लेकिन साल में 2-3 बार अपने कोड को समायोजित करने के लिए तैयार रहें (वहां किया गया है, इसे छोड़ दिया गया है)। उनके पास फीस-आधारित सेवा है जो डेटा तक पूर्ण पहुंच प्रदान करती है, लेकिन आपको यह समझाने की भी आवश्यकता होगी कि इसके लिए क्या है, और उन्हें विश्वास दिलाएं कि आप प्रतिस्पर्धी वेबसाइट नहीं बना रहे हैं (मेरे पास इसका एक लिंक था, लेकिन ऐसा लगता है बदलना है और अब इसे नहीं मिला है)। - http://www.trynt.com/trynt-movie-imdb-api/ पर अपनी साइट की जाँच

private const string UglyMovieRegex = "(?<=5>|3>)(Cast|Director:|Fun\\sStuff|Genre:|Plot:|Runtime:|Tagline:|Writers:)" 
               + "|href=\"[\\w\\d/]+?(Genres|name|character)/([\\w]+?)/\".*?>([.\\-\\s\\w]+)</a>" 
               + "|(?<=h\\d>)([.\\w\\s'\\-\"]+)(?=<a\\sc|</d|\\|)"; 

Regex MovieData = new Regex (UglyMovieRegex, RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline); 
+0

हाय मुझे समझ में नहीं आ रहा है कि क्यों आईएमडीबी वेबक्रैपिंग की अनुमति नहीं देता है लेकिन वे आपको पूर्ण डेटा तक पूर्ण पहुंच देते हैं? क्या आपको कारण पता है? यह सिर्फ समझ में नहीं आता है क्योंकि वेब स्क्रैपिंग सिर्फ अपनी साइट से डेटा प्राप्त कर रहा है जिसे वे पहले से ही प्रदान करते हैं? – hlim

5

यहाँ अपने खुद के समाधान रेगुलर एक्सप्रेशन से उपयोग कर रहा है। उनके पास टेलीविजन डेटा के लिए एक अलग सेवा भी है।

1

TRYNT भारी टेक्नोलॉजी (मुक्त करने के लिए) प्रदान करता है बुनियादी आईएमडीबी डेटा पुन: प्राप्त करने के लिए एक वेब सेवा:

+0

मरने की कोशिश नहीं है? यह अब कुछ दिनों के लिए नीचे है। –

+0

कोई भाग्य नहीं, सर्वर नीचे! – jv42

2

एक और विकल्प आपकी स्थानीय मशीन पर आईएमडीबी डेटाबेस चलाने के लिए है। Java Movie Database आईएमडीबी डेटाबेस फ़ाइलों को आयात करता है, उन्हें परिवर्तित करता है और आईएमडीबी की स्थानीय रूप से सुलभ प्रति प्रदान करता है। आईएमडीबी में कुछ कार्यक्षमता है जो जावा मूवी डेटाबेस में नहीं है और वीजा-विपरीत है, लेकिन यदि आप जो खोज रहे हैं वह सभी डेटा तक त्वरित पहुंच है, तो यह प्रयास करने के लायक हो सकता है।

17

IMDb के लिए पुस्तकालय वर्तमान में और अत्यधिक अक्षम होने पर काफी अविश्वसनीय प्रतीत होते हैं। मैं वास्तव में चाहता हूं कि IMDb सिर्फ एक webservice बनायेगा।

कुछ खोज के बाद मुझे IMDb के लिए एक उचित विकल्प मिला। यह सभी मूलभूत जानकारी जैसे ओवरव्यू, वर्ष, रेटिंग, पोस्टर, ट्रेलर इत्यादि प्रदान करता है .:

The Movie Database (TMDb)

यह wrappers for several languages के साथ एक webservice प्रदान करता है और अब तक विश्वसनीय लगता है। खोज परिणाम, मेरे लिए, और भी सटीक हैं।

5

इस हालांकि दो साल पहले पोस्ट किया गया है, यहाँ एक सरल अजगर कोड

import urllib2 

movie_id = raw_input('Enter the ID of the movie: ') 
json = urllib2.urlopen('http://imdbapi.com/?i=' + movie_id + '&r=json') 

print json.read() 

imdb.py के रूप में सहेजें है और फिर

आप एक्सएमएल डेटा चाहते हैं, तो खोल या टर्मिनल या जो कुछ भी में के रूप में चलाने बस xml

के साथ जेसन को प्रतिस्थापित करें कृपया ध्यान दें कि यह एक json परिणाम वापस करने के लिए imdbapi.com वेबसाइट का उपयोग कर रहा है, ताकि अधिक विकल्प देखने के लिए उस वेबसाइट पर जाएं।

2

अब http://www.imdb.com/xml/find?json=1&q=Harry+Potter जैसे एक (अनियंत्रित) एपीआई है। देखें Does IMDB provide an API?

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