পাইথন ওয়েবপেজ অ্যাক্সেস করার পাশাপাশি ওয়েবপৃষ্ঠাগুলিতে সামগ্রী পোস্ট করতে ব্যবহার করা যেতে পারে। httplib, urllib, httplib2 ইত্যাদির মত বিভিন্ন মডিউল রয়েছে কিন্তু অনুরোধ মডিউলটি সবচেয়ে সহজ এবং GET এবং POST পদ্ধতির সাথে জড়িত সহজ অথচ শক্তিশালী প্রোগ্রাম লিখতে ব্যবহার করা যেতে পারে।
পদ্ধতি পান
GET পদ্ধতি হল পাইথন রিকোয়েস্ট মডিউলের অংশ যা একটি ওয়েব ইউআরএল থেকে ডেটা পেতে ব্যবহৃত হয়। নীচের উদাহরণে আমরা আমাদের নিজস্ব ওয়েবসাইটে পৌঁছাই এবং get পদ্ধতির মাধ্যমে বিভিন্ন প্রতিক্রিয়া খুঁজে পাই। আমরা এনকোডিং, প্রতিক্রিয়া সময় এবং শিরোনাম এবং শরীরের অংশ পাই।
উদাহরণ
import requests
req = requests.get('http://www.tutorialspoint.com/')
# Page encoding
e = req.encoding
print("Encoding: ",e)
# Response code
s = req.status_code
print("Response code: ",s)
# Response Time
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 পদ্ধতি ব্যবহার করা হয়। অনুরোধ মডিউল আমাদের পোস্ট পদ্ধতি প্রদান করে যা ডাটা প্যারামিটারের URL এবং মান নিয়ে সরাসরি ডেটা পাঠাতে পারে।
নীচের উদাহরণে আমরা পোস্ট পদ্ধতির মাধ্যমে httpbin.org ওয়েবসাইটে কিছু ডেটা পোস্ট করি এবং কীভাবে এটি পোস্ট করা হয় তার একটি প্রতিক্রিয়া পাই৷
উদাহরণ
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"
}