पायथन का उपयोग वेबपेज तक पहुंचने और साथ ही वेबपेज पर कंटेंट पोस्ट करने के लिए किया जा सकता है। httplib, urllib, httplib2 जैसे विभिन्न मॉड्यूल हैं लेकिन requests मॉड्यूल सबसे सरल है और इसका उपयोग GET और POST मेथड वाले सरल लेकिन शक्तिशाली प्रोग्राम लिखने के लिए किया जा सकता है।
GET मेथड
GET मेथड पायथन requests मॉड्यूल का हिस्सा है जिसका उपयोग वेब URL से डेटा प्राप्त करने के लिए किया जाता है। नीचे दिए गए उदाहरण में हम अपनी वेबसाइट तक पहुंचते हैं और GET मेथड के माध्यम से विभिन्न प्रतिक्रियाओं का पता लगाते हैं। हमें एन्कोडिंग, प्रतिक्रिया समय और हेडर तथा बॉडी का हिस्सा भी मिलता है।
उदाहरण
import requests
req = requests.get('https://www.tutorialspoint.com/')
# पेज एन्कोडिंग
e = req.encoding
print("Encoding: ", e)
# प्रतिक्रिया कोड
s = req.status_code
print("Response code: ", s)
# प्रतिक्रिया समय
t = req.elapsed
print("Response Time: ", t)
t = req.headers['Content-Type']
print("Header: ", t)
z = req.text
print("\nSome text from the web page:\n", z[0:200])
आउटपुट
उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -
Encoding: UTF-8 Response code: 200 Response Time: 0:00:00.103850 Header: text/html; charset=UTF-8 Some text from the web page:
POST मेथड
POST मेथड का उपयोग सर्वर पर डेटा भेजने के लिए किया जाता है, ज्यादातर फॉर्म के माध्यम से सर्वर पर डेटा बनाने या अपडेट करने के लिए। requests मॉड्यूल हमें post मेथड प्रदान करता है जो URL और डेटा पैरामीटर का मान लेकर सीधे डेटा भेज सकता है।
नीचे दिए गए उदाहरण में हम httpbin.org वेबसाइट पर POST मेथड के माध्यम से कुछ डेटा पोस्ट करते हैं और इस पर प्रतिक्रिया प्राप्त करते हैं कि यह कैसे पोस्ट किया गया।
उदाहरण
import requests
in_values = {'username': 'Jack', 'password': 'Hello'}
res = requests.post('https://httpbin.org/post', data=in_values)
print(res.text)
आउटपुट
उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -
{
"args": {},
"data": "",
"files": {},
"form": {
"password": "Hello",
"username": "Jack"
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Content-Length": "28",
"Content-Type": "application/x-www-form-urlencoded",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.22.0",
"X-Amzn-Trace-Id": "Root=1-5ef75488-969f97a68bb72642b97b6d50"
},
"json": null,
"origin": "122.xxx.yy.zzz",
"url": "https://httpbin.org/post"
}