Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonを使用したWebサイトブロッカー


大規模なIT企業で働いている場合は、その2つのWebサイト、特にFacebook、YouTube、Instagramなどのソーシャルネットワーキングサイトがブロックされていることに気付くかもしれません。

サードパーティのアプリケーションを使用して特定のWebサイトをブロックする代わりに、選択したWebサイトをブロックする独自のカスタムアプリケーションを開発できます。PythonでWebサイトブロッカーを開発することもそれほど難しくありません。それが私たちがやろうとしていることです-私たちが望むウェブサイトをブロックするPythonスクリプトを開発します。

前提条件:

  • Python3.xがインストールされています
  • Pythonの基本的な知識

これから行うこと:

1日の特定の時間(9:00〜18:00時間)に特定のWebサイト(Facebook、YouTubeなどの任意のWebサイト)をブロックするPythonアプリケーションを開発し、その日の営業時間を考慮します。すべてのソーシャルネットワーキングサイトをブロックしたい。 Python組み込みライブラリを使用するため、サードパーティのパッケージをインストールする必要はありません。

どうすればいいですか?

すべてのオペレーティングシステムにはhostsファイルがあります。ホストファイルの場所は、オペレーティングシステムによって異なる場合があります。このホストファイルは、ホスト名をマシンのIPアドレスにマップします。このホストファイルでは、ブロックするWebサイトを一覧表示します。

ホストファイルは次のようになります

Pythonを使用したWebサイトブロッカー

私が言及していないように、私のホストファイルのウェブサイト名。 「youtube.com」を開こうとしても問題なくできます。以下はスクリーンショットです(スクリプトを実行した後、ブロックしたい場合はこのWebサイトを開かないようにするためです)。

Pythonを使用したWebサイトブロッカー

以下は当社のウェブサイトブロッカープログラムです-

#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を使用したWebサイトブロッカー

期間、ウェブサイト、カスタムメッセージなどの要件に応じて、上記のコードをカスタマイズできます。


  1. PythonでのCX_Freezeの使用

    時々私たちは非常にエキサイティングな何か違うものを作りたいと感じます、そして人間の性質によれば、私たちはいつもそれを共有するのが大好きです。 Pythonもそれらの願いを満たします。 Pythonを使用して、Pythonプログラムを友人と共有したい場合は、それを行うことができます。必要なのは、マシンのプログラムで使用されるすべてのモジュールに同じバージョンのPythonをインストールすることだけです。 まず、 pip install CX_Frezzeを使用してCX_Freezeモジュールをインストールする必要があります コマンドプロンプトのコマンド。 最初のステップは、この割り当て、

  2. Pythonを使用してWebサイトアラームを作成する

    このセクションでは、Pythonを使用してWebサイトの警報システムを作成する方法を説明します。 問題の説明 ウェブサイトのURLと時間を取得して、ブラウザでウェブサイトのURLを開きます。システム時刻が指定時刻に達すると、Webページが開きます。 ブックマークセクションにさまざまなWebページを保存できます。時々、私たちはいくつかの仕事をするために特定の時間に毎日いくつかのウェブページを開く必要があります。そのために、このタイプのWebサイトアラームを設定して作業を行うことができます。 この場合、sys、Webブラウザ、timeなどの標準ライブラリモジュールを使用しています。 特定の時