কম্পিউটার

Python ব্যবহার করে ওয়েবসাইট ব্লকার


আপনি যদি একটি বড় আইটি কোম্পানিতে কাজ করেন তবে আপনি লক্ষ্য করতে পারেন যে তাদের কয়েকটি ওয়েবসাইট বিশেষ করে ফেসবুক, ইউটিউব, ইনস্টাগ্রাম ইত্যাদির মতো সামাজিক নেটওয়ার্কিং সাইটগুলি ব্লক করা হয়েছে৷

নির্দিষ্ট ওয়েবসাইট ব্লক করার জন্য থার্ড-পার্টি অ্যাপ্লিকেশন ব্যবহার করার পরিবর্তে, আমরা আমাদের নিজস্ব কাস্টম অ্যাপ্লিকেশন তৈরি করতে পারি যা আমাদের পছন্দের ওয়েবসাইটগুলিকে ব্লক করবে এবং পাইথনে একটি ওয়েবসাইট ব্লকার তৈরি করা খুব কঠিন নয়। এটিই আমরা করতে যাচ্ছি- একটি পাইথন স্ক্রিপ্ট তৈরি করতে যা আমাদের কাঙ্খিত ওয়েবসাইট ব্লক করবে।

পূর্বশর্ত:

  • Python 3.x ইনস্টল করা হয়েছে
  • পাইথনের প্রাথমিক জ্ঞান

আমরা যা করতে যাচ্ছি:

আমরা পাইথন অ্যাপ্লিকেশন বিকাশ করতে যাচ্ছি যা দিনের নির্দিষ্ট সময় (9:00 থেকে 18:00 ঘন্টা) একটি নির্দিষ্ট ওয়েবসাইট (আপনি যে ওয়েবসাইট চান না কেন- ফেসবুক, ইউটিউব ইত্যাদি) ব্লক করবে, দিনের অফিস সময় বিবেচনা করুন, আমরা সমস্ত সামাজিক নেটওয়ার্কিং সাইট ব্লক করতে চান. আমরা পাইথন বিল্ট-ইন লাইব্রেরি ব্যবহার করতে যাচ্ছি, তাই কোনো তৃতীয় পক্ষের প্যাকেজ ইনস্টল করার প্রয়োজন নেই।

আমরা এটা কিভাবে করব?

প্রতিটি অপারেটিং সিস্টেমে একটি হোস্ট ফাইল থাকে। বিভিন্ন অপারেটিং সিস্টেমের জন্য হোস্ট ফাইলের অবস্থান ভিন্ন হতে পারে। এই হোস্ট ফাইলটি মেশিনের আইপি ঠিকানার হোস্টনাম ম্যাপ। এই হোস্ট ফাইলে, আমরা যে ওয়েবসাইটগুলিকে ব্লক করতে চাই সেগুলির তালিকা করব৷

আমাদের হোস্ট ফাইলটি এরকম কিছু দেখাবে,

Python ব্যবহার করে ওয়েবসাইট ব্লকার

আমি উল্লেখ করিনি, আমার হোস্ট ফাইলে কোনো ওয়েবসাইটের নাম। আমি যদি "youtube.com" খুলতে চেষ্টা করি, আমি কোনো সমস্যা ছাড়াই এটি করতে পারি। নীচে স্ক্রিনশট দেওয়া হল (আমার স্ক্রিপ্টগুলি চালানোর পরে নিশ্চিত করার জন্য, আমি যদি এটি ব্লক করতে চাই তবে এই ওয়েবসাইটটি খোলা উচিত নয়।)

Python ব্যবহার করে ওয়েবসাইট ব্লকার

নীচে আমাদের ওয়েবসাইট ব্লকার প্রোগ্রাম -

#Import libraries
import time
from datetime import datetime as dt
#Windows host file path
hostsPath=r"C:\Windows\System32\drivers\etc\hosts"
redirect="127.0.0.1"
#Add the website you want to block, in this list
websites=["www.youtube.com","youtube.com", "www.facebook.com", "facebook.com"]
while True:
   #Duration during which, website blocker will work
   if dt(dt.now().year,dt.now().month,dt.now().day,9) < dt.now() < dt(dt.now().year,dt.now().month,dt.now().day,18):
   print ("Sorry Not Allowed...")
   with open(hostsPath,'r+') as file:
      content = file.read()
      for site in websites:
         if site in content:
            pass
         else:
            file.write(redirect+" "+site+"\n")
   else:
      with open(hostsPath,'r+') as file:
      content = file.readlines()
      file.seek(0)
      for line in content:
         if not any(site in line for site in websites):
            file.write(line)
         file.truncate()
   print ("Allowed access!")
time.sleep(5)

আউটপুট

Sorry Not Allowed...
Sorry Not Allowed...
Sorry Not Allowed...
Sorry Not Allowed...
Sorry Not Allowed...
Sorry Not Allowed...
Sorry Not Allowed...
….

এখন আমি যদি youtube.com বা facebook.com খোলার চেষ্টা করি, আমরা −

পাব

Python ব্যবহার করে ওয়েবসাইট ব্লকার

আমরা আমাদের প্রয়োজন অনুযায়ী উপরের কোড কাস্টমাইজ করতে পারি যেমন সময়কাল, ওয়েবসাইট, কাস্টম বার্তা ইত্যাদি।


  1. পাইথন ব্যবহার করে ইমেজ ভিত্তিক স্টেগানোগ্রাফি?

  2. পাইথন ব্যবহার করে বেস64 ডেটা এনকোডিং

  3. পাইথনে CX_Freeze ব্যবহার করা

  4. পাইথন ব্যবহার করে একটি ওয়েবসাইট অ্যালার্ম তৈরি করুন