Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

urllib.robotparser - Python में robots.txt के लिए पार्सर

वेब साइट के मालिक वेब रोबोट को अपनी साइट के बारे में निर्देश देने के लिए /robots.txt फ़ाइल का उपयोग करते हैं; इसे रोबोट्स एक्सक्लूजन प्रोटोकॉल कहते हैं। यह फ़ाइल कंप्यूटर प्रोग्रामों के लिए एक साधारण पाठ-आधारित अभिगम नियंत्रण प्रणाली है जो स्वचालित रूप से वेब संसाधनों तक पहुँच प्राप्त करती है। ऐसे कार्यक्रमों को स्पाइडर, क्रॉलर आदि कहा जाता है। फ़ाइल उपयोगकर्ता एजेंट पहचानकर्ता को निर्दिष्ट करती है जिसके बाद उन URL की सूची होती है जिन तक एजेंट पहुंच नहीं सकता है।

उदाहरण के लिए

#robots.txt
Sitemap: https://example.com/sitemap.xml
User-agent: *
Disallow: /admin/
Disallow: /downloads/
Disallow: /media/
Disallow: /static/

यह फ़ाइल आमतौर पर आपके वेब सर्वर की शीर्ष-स्तरीय निर्देशिका में रखी जाती है।

पायथन का urllib.robotparser मॉड्यूल RobotFileParser वर्ग प्रदान करता है। यह इस बारे में प्रश्नों का उत्तर देता है कि क्या कोई विशेष उपयोगकर्ता एजेंट robots.txt फ़ाइल को प्रकाशित करने वाली वेब साइट पर URL प्राप्त कर सकता है या नहीं।

निम्नलिखित विधि को RobotFileParser वर्ग में परिभाषित किया गया है

set_url(url)

यह विधि एक robots.txt फ़ाइल का संदर्भ देने वाले URL को सेट करती है।

पढ़ें ()

यह विधि robots.txt URL को पढ़ती है और इसे पार्सर को फीड करती है।

पार्स ()

यह विधि लाइन तर्क को पार्स करती है।

can_fetch()

यदि उपयोगकर्ता robots.txt में निहित नियमों के अनुसार url प्राप्त करने में सक्षम है, तो यह विधि सही है।

mtime()

यह विधि वह समय लौटाती है जब robots.txt फ़ाइल पिछली बार प्राप्त की गई थी।

संशोधित ()

यह विधि उस समय को निर्धारित करती है जब robots.txt को अंतिम बार लाया गया था।

crawl_delay()

यह विधि विचाराधीन उपयोगकर्ता के लिए क्रॉल-विलंब पैरामीटर robots.txt का मान लौटाती है।

request_rate()

यह विधि Request-rate पैरामीटर की सामग्री को नामित tuple RequestRate (अनुरोध, सेकंड) के रूप में लौटाती है।

उदाहरण

from urllib import parse
from urllib import robotparser
AGENT_NAME = 'PyMOTW'
URL_BASE = 'https://example.com/'
parser = robotparser.RobotFileParser()
parser.set_url(parse.urljoin(URL_BASE, 'robots.txt'))
parser.read()

  1. चयन क्रम के लिए पायथन कार्यक्रम

    इस लेख में, हम Python 3.x में सिलेक्शन सॉर्ट और उसके कार्यान्वयन के बारे में जानेंगे। या पहले। चयन क्रम . में एल्गोरिथम, एक सरणी को पुनरावर्ती रूप से अनसोल्ड भाग से न्यूनतम तत्व ढूंढकर और शुरुआत में सम्मिलित करके सॉर्ट किया जाता है। किसी दिए गए सरणी पर चयन क्रम के निष्पादन के दौरान दो उप-सरणी बनते

  1. विंडोज़ पर पायथन प्रोग्रामिंग के लिए आईडीई

    इस लेख में, हम विंडोज़ के लिए पायथन पर उपलब्ध विभिन्न आईडीई के बारे में जानेंगे। पिचर्म इंटरएक्टिव पायथन कंसोल वेब ढांचे के लिए समर्थन तेज़ अपवर्तन समय कम विकास जुपिटर नोटबुक लगभग हर पायथन मॉड्यूल के साथ संगतता कम जगह और हार्डवेयर आवश्यकताएं इनबिल्ट टर्मिनल और कर्नेल सुविधाएं विज़ेट की एक विस्त

  1. पायथन कोड के लिए अनुकूलन युक्तियाँ?

    हालांकि हम सभी जानते हैं कि अजगर अन्य अनुपालन वाली भाषाओं की तरह तेज या कुशल नहीं है। हालाँकि, कई बड़ी कंपनियाँ हैं जो हमें दिखाती हैं कि पायथन कोड बहुत बड़े कार्यभार को संभाल सकता है जो दर्शाता है कि यह इतना धीमा नहीं है। इस खंड में, हम कुछ युक्तियों को देखने जा रहे हैं जिन्हें ध्यान में रखना चाहिए