2011-03-02 13 views
5

मैं एक ऐसा एप्लीकेशन विकसित कर रहा हूं जिसमें मुझे यह जांचना है कि किसी दिए गए यूआरएल के लिए botw.org पर कोई लिंक मौजूद है या नहीं। क्या यह देखने के लिए botw.org, या किसी अन्य स्रोत की जांच करने के लिए कोई निःशुल्क एपीआई उपलब्ध है?मैं कैसे जांचूं कि URL के पास botw.org पर कोई लिंक है या नहीं?

धन्यवाद!

+0

वेबसाइट स्थान अपडेट किया गया। bestoftheweb.org अमान्य है। पृष्ठ botw.org पर है। –

उत्तर

0

आप खोज पृष्ठ का उपयोग कर सकते हैं:

उदाहरण: http://search.botw.org/search?q=stackoverflow.com

पूरी साइट रेंगने की बजाय, आप बस अगर आप एक अच्छा परिणाम वहाँ पाने सत्यापित कर सकते हैं।

+0

धन्यवाद पौराणिक कथा –

0

आपको साइट को क्रॉल करना होगा, प्रत्येक पृष्ठ को एंकरों के लिए पार्स करना होगा, और परीक्षण करें कि यदि आप जो खोज रहे हैं उससे मेल खाते हैं ... मानते हैं कि वे लिंक बनाने के लिए जावास्क्रिप्ट का उपयोग नहीं कर रहे हैं, कुछ लोग करते हैं।

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

+1

एक मानक एक्सएमएल पार्सर एचटीएमएल के साथ काम नहीं करेगा, यह देखते हुए कि यह आमतौर पर कितनी बुरी तरह गठित होता है। – Joel

1

आपको क्रॉलर की आवश्यकता है। यह एक अपने आप का निर्माण करने के लिए बहुत तुच्छ है (छोटे क्रॉल के लिए!)

  • पहले पन्ने (नीचे देखें **)
  • पेज पार्स, लिंक निकालें मारा। इसके लिए आपको एक HTML पार्सर चाहिए जो बुरी तरह से स्वरूपित HTML को संभाल सकता है। Jericho, TagSoup, CyberNecko या HtmlTidy आज़माएं। एक सामान्य एक्सएमएल पार्सर शायद अधिकांश HTML पृष्ठों के लिए सरसों को काट नहीं देगा, क्योंकि वे अक्सर एक्सएमएल का गठन नहीं करते हैं।
  • जो लिंक आप खोज रहे हैं उसे जांचें। यदि आप इसे स्थानीय साइट लिंक नहीं जोड़ पाते हैं जिसे आपने पहले नहीं देखा है और चरण 1 पर वापस जाएं, दोहराएं।

एक छोटी सी साइट (कुछ हज़ार पृष्ठों) के लिए आप शायद यह सब स्मृति में कर सकते हैं।

** अनुरोध करने के लिए सामान्य जावा URLConnection या कॉमन्स HTTPClient (v4) का उपयोग करें।

नोट: अपना लिंक ढूंढना - लिंक किसी साइट पर पूर्ण, स्थानीय या कुछ आधार href के लिए हल हो सकते हैं। आपकी तलाश करते समय आपको इसके लिए खाते की आवश्यकता होगी। सबसे आसान सभी लिंक का अनुवाद करना सबसे आसान है, मौजूदा पेज बेस href को हल करने के लिए देखभाल करना, यदि उसके पास है।

सरल।

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

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