使用Python的网站拦截器

这是一个真实世界的程序,它会在你的工作时间屏蔽某些分散注意力的网站,比如Facebook、Youtube等。

null

关于该计划: 我们在这个项目中要做的是,我们将通过你认为分散注意力的网站链接,你在电脑和程序上工作的时间将阻止这些网站。

程序架构:

  1. 每个系统都有 主办 文件,无论是Mac、Windows还是Linux。 主办 Mac和Linux中的文件:
    /etc/hosts

    主办 Windows中的文件:

    C:WindowsSystem32driversetc
  2. 主机文件的工作方式: 主机是一个将主机名映射到IP地址的操作系统文件。在这个程序中,我们将把网站的主机名映射到我们的本地主机地址。使用python文件处理操作,我们将在主机中写入主机名。在工作时间结束后删除这些行。

    Mac中的主机文件:

    图片[1]-使用Python的网站拦截器-yiteyi-C++库

# Run this script as root
import time
from datetime import datetime as dt
# change hosts path according to your OS
hosts_path = "/etc/hosts"
# localhost's IP
redirect = "127.0.0.1"
# websites That you want to block
website_list =
[ "www.facebook.com" , "facebook.com" ,
"dub119.mail.live.com" , "www.dub119.mail.live.com" ,
"www.gmail.com" , "gmail.com" ]
while True :
# time of your work
if dt(dt.now().year, dt.now().month, dt.now().day, 8 )
< dt.now() < dt(dt.now().year, dt.now().month, dt.now().day, 16 ):
print ( "Working hours..." )
with open (hosts_path, 'r+' ) as file :
content = file .read()
for website in website_list:
if website in content:
pass
else :
# mapping hostnames to your localhost IP address
file .write(redirect + " " + website + "" )
else :
with open (hosts_path, 'r+' ) as file :
content = file .readlines()
file .seek( 0 )
for line in content:
if not any (website in line for website in website_list):
file .write(line)
# removing hostnmes from host file
file .truncate()
print ( "Fun hours..." )
time.sleep( 5 )


Windows用户的特别注意事项: Windows用户需要创建操作系统主机文件的副本。现在在中提供重复文件的路径 东道主 剧本中提到的。

在Mac中调度上述脚本: 要在Mac中调度上述脚本,您必须以root用户身份在终端中打开crontab。

  1. 在终端中写入以下命令:
    sudo crontab -e

    你的终端应该是这样的: 图片[2]-使用Python的网站拦截器-yiteyi-C++库 图片[3]-使用Python的网站拦截器-yiteyi-C++库

  2. 现在按“i”进入插入/编辑模式,并写入@reboot python_script_路径。
  3. 先按esc键退出写入模式,然后返回命令模式,现在写入“:wq”,最后按enter键进行验证,以保存选项卡。
  4. 重启你的系统,看看它的神奇之处。

Windows中的日程安排: 以上脚本的调度是一个小技巧,但我会一步一步地指导你们-

  1. 首先,将脚本的扩展名从“.py”更改为“.pyw”。
  2. 现在打开任务调度器。任务计划程序应该如下所示: 图片[4]-使用Python的网站拦截器-yiteyi-C++库

    你可能会看到网站拦截器已经安排好了,因为我已经在我的计算机上安排了测试。为了在您的计算机上安排网站屏蔽程序,请仔细遵循进一步的计划说明。

  3. 点击“创建任务”。填写您选择的名称,并标记“以最高权限跑步”。 图片[5]-使用Python的网站拦截器-yiteyi-C++库

    图片[6]-使用Python的网站拦截器-yiteyi-C++库

  4. 现在转到触发器,选择“启动时”开始任务。 图片[7]-使用Python的网站拦截器-yiteyi-C++库
  5. 转到操作栏,创建一个新操作,并给出脚本的路径。 图片[8]-使用Python的网站拦截器-yiteyi-C++库

    图片[9]-使用Python的网站拦截器-yiteyi-C++库

  6. 转到“条件栏”并解除电源部分的延迟。 图片[10]-使用Python的网站拦截器-yiteyi-C++库

    图片[11]-使用Python的网站拦截器-yiteyi-C++库

  7. 按ok,你可以看到预定的脚本。 图片[12]-使用Python的网站拦截器-yiteyi-C++库
  8. 最后重启你的电脑,看看它的神奇之处。 图片[13]-使用Python的网站拦截器-yiteyi-C++库 注: 您也可以通过点击run按钮立即进行检查。
© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享