परिचय
हम urllib.request . का उपयोग करते हैं URL को एक्सेस करने और खोलने के लिए पायथन में मॉड्यूल, जो अक्सर HTTP प्रोटोकॉल का उपयोग करते हैं।
उपयोग किया गया इंटरफ़ेस भी शुरुआती लोगों के लिए उपयोग करने और सीखने के लिए बहुत सरल है; यह urlopen . का उपयोग करता है फ़ंक्शन जो विभिन्न प्रोटोकॉल का उपयोग करके विभिन्न URL प्राप्त कर सकता है।
एक बार जब हम इसकी विभिन्न कार्यक्षमताओं का उपयोग करना शुरू कर देंगे, तो आपको इसकी बेहतर समझ होगी कि हम किसके साथ काम कर रहे हैं। तो चलिए शुरू करते हैं।
आरंभ करना
urllib पुस्तकालय पायथन के साथ पैक किया जाता है। इसलिए, आपको इसे अलग से स्थापित करने की आवश्यकता नहीं है, लेकिन यदि आप इसे अपने परिवेश में जोड़ना चाहते हैं और आपके पास पहले से नहीं है, तो आप इसे पाइप पैकेज मैनजर का उपयोग करके स्थापित कर सकते हैं।
अपना टर्मिनल लॉन्च करें और नीचे दिए गए कोड का उपयोग करें,
pip install urllib
एक बार जब आप इसे स्थापित कर लेते हैं, तो आप सही मॉड्यूल आयात कर सकते हैं और अपनी स्क्रिप्ट लिखना शुरू कर सकते हैं।
urllib.request देख रहे हैं
डेटा, या पृष्ठ के स्रोत कोड को खोलने और पढ़ने के लिए हम अक्सर urllib.request का उपयोग करते हैं। यदि आप किसी API से डेटा पुनर्प्राप्त करने का प्रयास कर रहे हैं तो यह विशेष रूप से उपयोगी हो जाता है। उदाहरण के लिए,
import urllib.request request_url = urllib.request.urlopen('https://official−joke−api.appspot.com/random_ten')
कोड की उपरोक्त पंक्तियाँ जोक एपीआई को खोल देंगी और उसका डेटा पढ़ लेंगी।
मान लीजिए आप इसकी सामग्री का प्रिंट आउट लेना चाहते हैं, तो आप इसका उपयोग कर सकते हैं -
print(request_url.read())
नोट - यह बाइट फॉर्मेट में वैल्यू का प्रिंट आउट लेगा। यदि आप सादा पाठ चाहते हैं, तो डिकोड फ़ंक्शन का उपयोग करें।
print(request_url.read().decode())
आप एपीआई से डेटा भी सहेजते हैं और फिर बाद में केवल आवश्यक डेटा प्राप्त करने के लिए RegEx का उपयोग करके इसे पार्स करते हैं।
उदाहरण
import urllib.request data = urllib.request.urlopen('https://official−joke−api.appspot.com/random_ten') data = data.read().decode() print(data) file = open("content.txt", "w+") file.write(data) file.close()
नोट - आप एफ़टीपी, एचटीटीपीएस आदि सहित विभिन्न प्रोटोकॉल के साथ यूआरएल तक पहुंच सकते हैं। urlopen सभी विभिन्न प्रोटोकॉल के लिए ठीक उसी तरह कार्य करता है।
एक URL को डेटा भेजना
यदि आप कॉमन गेटवे इंटरफेस के साथ काम कर रहे हैं, तो हो सकता है कि आप किसी यूआरएल को डेटा भेजना चाहें। यह इसी तरह HTTP के साथ काम करता है जहां यह POST अनुरोध भेजता है।
आप urllib.request के साथ urllib.parse मॉड्यूल का उपयोग करके इसे प्राप्त कर सकते हैं।
आइए पहले मॉड्यूल आयात करें।
उदाहरण
import urllib.parse import urllib.request url = 'https://www.google.com/cgi-bin/register.cgi' values = {'name' : 'S Vijay Balaji', language' : 'Python' } data = urllib.parse.urlencode(values) data = data.encode('ascii') req = urllib.request.Request(url, data) with urllib.request.urlopen(req) as response: the_page = response.read()
इसके बाद दिए गए URL से स्रोत कोड का प्रिंट आउट लेना चाहिए।
निष्कर्ष
urllib.request मॉड्यूल बहुत उपयोगी है क्योंकि हम इंटरनेट संसाधनों को पुनः प्राप्त कर सकते हैं और उनसे डेटा प्राप्त कर सकते हैं।
एपीआई से डेटा पार्स करते समय या किसी वेब पेज के सोर्स कोड के माध्यम से उसकी सामग्री को परिमार्जन करने के लिए पढ़ते समय यह काम आता है।
प्रोजेक्ट जहां विभिन्न एपीआई से डेटा निकालने के लिए urllib.request का उपयोग किया गया था - https://github.com/SVijayB/Steam_WebScraper।
urllib.request मॉड्यूल से कई अन्य कार्य हैं। यदि आप उत्सुक हैं और अधिक जानना चाहते हैं, तो आप उनके आधिकारिक दस्तावेज़- https://docs.python.org/3/library/urllib.request.html पर जा सकते हैं।