Trong blog này, chúng tôi sẽ thảo luận về “Cách tạo Trình chặn trang web bằng Python“. Trình chặn trang web là một công cụ giúp bạn chặn một số trang web do bạn chỉ định mà bạn không muốn cho phép mở trên PC hoặc Máy tính xách tay của mình. Dự án này sẽ giúp bạn tránh xa sự phân tâm của họ bằng cách chặn các trang web đó khỏi thiết bị của bạn
Chạy tập lệnh Python từ dấu phẩy
Vui lòng bật JavaScript
Chạy tập lệnh Python từ một dòng lệnhTrong Dự án Trình chặn trang web Python này, người dùng có thể nhập nhiều trang web để chặn, sau đó nhấp vào nút chặn sẽ kiểm tra điều kiện nếu trang web đã bị chặn thì in 'đã bị chặn', ngược lại đã chặn tất cả các trang web đó và in 'bị chặn'
Tìm hiểu cách tạo trình chặn trang web tự động chặn trang web cho chúng tôi và giúp chúng tôi làm việc hiệu quả hơn
Patrick Loeber · · · · · Ngày 01 tháng 1 năm 2021 · 3 phút đọc
con trănTrong Hướng dẫn Python này, chúng tôi tạo một trình chặn trang web tự động chặn trang web cho chúng tôi và giúp chúng tôi làm việc hiệu quả hơn. Điều này có thể hữu ích nếu bạn có mục tiêu trong năm mới là sử dụng ít mạng xã hội hơn
Mã này cũng có sẵn trên GitHub
Kịch bản
Đây là mã. Sửa đổi end_time
và đặt thời gian cho đến khi bạn muốn chặn tất cả các trang web của mình. Đồng thời xác định tất cả các trang web bạn muốn chặn trong danh sách sites_to_block
. Người dùng Windows cũng phải cập nhật đường dẫn chính xác đến tệp máy chủ [xem đường dẫn đã nhận xét]. Sau đó, bạn có 3 tùy chọn làm thế nào để sử dụng nó
- Kích hoạt tập lệnh theo cách thủ công mọi lúc mọi nơi
- Thiết lập một công việc Cron
- Để tập lệnh chạy trong nền với vòng lặp True
Làm thế nào nó hoạt động?
Cách tiếp cận rất đơn giản. Chúng tôi chỉ sửa đổi tệp máy chủ và xác định ánh xạ từ tên miền bị chặn sang 127 của chúng tôi. 0. 0. 1 địa chỉ IP. Bằng cách này, tất cả các yêu cầu đối với miền được chuyển hướng đến máy chủ cục bộ của chúng tôi. Thông thường không có máy chủ nào chạy trên localhost nên chúng ta sẽ thấy thông báo "Site can't bereach". Trước khi sử dụng mã này và sửa đổi tệp, bạn có thể muốn tạo một bản sao lưu tệp máy chủ của mình
Trong phần hướng dẫn này, chúng ta sẽ xây dựng tập lệnh python để tiếp tục chỉnh sửa tệp máy chủ trong giờ làm việc. Chúng tôi cũng sẽ triển khai tập lệnh đó khi khởi động hệ điều hành để nó không cần bất kỳ thực thi bên ngoài nào
Trình chặn trang web là một công cụ từ chối truy cập vào các trang web vĩnh viễn hoặc theo lịch trình. Để sử dụng internet một cách an toàn, chúng tôi có thể chặn tất cả các trang web khỏi các danh mục không mong muốn
Dự án Python chặn trang web
Mục tiêu của dự án python Trình chặn trang web là chặn các trang web nhất định khỏi mọi thiết bị. Dự án này sẽ giúp người dùng tránh xa sự phân tâm của họ bằng cách chặn các trang web khỏi thiết bị của họ để họ không thể mở chúng
Trong Dự án Trình chặn trang web Python này, người dùng có thể nhập nhiều trang web để chặn, sau đó nhấp vào nút chặn sẽ kiểm tra điều kiện nếu trang web đã bị chặn thì in 'đã bị chặn', ngược lại đã chặn tất cả các trang web đó và in 'bị chặn'
Điều kiện tiên quyết của dự án
Để triển khai dự án chặn trang web, chúng tôi sẽ sử dụng các khái niệm cơ bản về Python và thư viện Tkinter
Tkinter là một thư viện GUI Python tiêu chuẩn. Đây là một trong những cách nhanh nhất và dễ nhất để xây dựng các ứng dụng GUI bằng Tkinter
Để cài đặt thư viện, bạn có thể sử dụng lệnh pip install vào dấu nhắc lệnh
pip install tkinter
Tải xuống mã dự án Trình chặn trang web
Vui lòng tải xuống mã nguồn của dự án chặn trang web. Trình chặn trang web Python
Các bước xây dựng Dự án Python chặn trang web
- Nhập mô-đun
- Tạo cửa sổ hiển thị
- Tạo tiện ích mục nhập
- Xác định chức năng
- Tạo nút chặn
1. Nhập mô-đun
from tkinter import *
Chúng tôi nhập các mô-đun từ thư viện tkinter
2. Tạo cửa sổ hiển thị
root = Tk[] root.geometry['500x300'] root.resizable[0,0] root.title["TechVidvan - Website Blocker"]
Chúng tôi sử dụng thư viện tkinter để tạo một cửa sổ nơi chúng tôi sẽ nhập văn bản mà chúng tôi muốn chuyển đổi thành giọng nói
- Tk[] khởi tạo tkinter có nghĩa là cửa sổ được tạo
- hình học [] đặt chiều rộng và chiều cao của cửa sổ
- thay đổi kích thước [0,0] đặt kích thước cố định của cửa sổ
- bg = ‘’ sử dụng để đặt màu nền
- title[] được sử dụng để đặt tiêu đề của cửa sổ
Label[root, text ='WEBSITE BLOCKER' , font ='arial 20 bold'].pack[] Label[root, text ='TechVidvan' , font ='arial 20 bold'].pack[side=BOTTOM]
Tiện ích Label[] được sử dụng để hiển thị một hoặc nhiều dòng văn bản mà người dùng không thể sửa đổi
- root - tên mà chúng tôi đề cập đến cửa sổ của chúng tôi
- văn bản – mà chúng tôi hiển thị trên nhãn
- phông chữ - trong đó văn bản được viết
- gói – tiện ích được sắp xếp theo khối
3. Tạo tiện ích mục nhập
host_path ='C:\Windows\System32\drivers\etc\hosts' ip_address = '127.0.0.1' Label[root, text ='Enter Website :' , font ='arial 13 bold'].place[x=5 ,y=60] Websites = Text[root,font = 'arial 10',height='2', width = '40', wrap = WORD, padx=5, pady=5] Websites.place[x= 140,y = 60]
- host_path lưu trữ đường dẫn của tệp máy chủ của chúng tôi
- ip_address lưu trữ địa chỉ IP được sử dụng bởi localhost
- Tiện ích Text[] được sử dụng cho các vùng văn bản nhiều dòng
- quấn = WORD sẽ ngắt dòng sau từ cuối cùng
- padx đặt thêm một khoảng trống ở bên trái và bên phải của tiện ích
- pady đặt thêm không gian ở mặt trên và mặt dưới của tiện ích
4. Xác định chức năng
def Blocker[]: website_lists = Websites.get[1.0,END] Website = list[website_lists.split[","]] with open [host_path , 'r+'] as host_file: file_content = host_file.read[] for website in Website: if website in file_content: Label[root, text = 'Already Blocked' , font = 'arial 12 bold'].place[x=200,y=200] pass else: host_file.write[ip_address + " " + website + '\n'] Label[root, text = "Blocked", font = 'arial 12 bold'].place[x=230,y =200]
- website_lists lấy tất cả các trang web mà người dùng nhập vào
- website_list[danh sách. split[“,”]] tách nội dung của danh sách bằng dấu phẩy và sau đó chuyển đổi nó thành danh sách quảng cáo lưu trữ nó vào Trang web
- with open – Câu lệnh with open mở tệp và nó sẽ tự động đóng trình xử lý tệp khi chúng ta hoàn thành nó
- r+ sẽ dùng để mở tệp để đọc và ghi
- Nếu trang web đã có trong file_content thì hãy in nhãn có văn bản đã bị chặn
- Nếu không, nó sẽ chặn tất cả các trang web đã cho và in nhãn văn bản 'Bị chặn'
5. Tạo nút chặn
block = Button[root, text = 'Block',font = 'arial 12 bold',pady = 5,command = Blocker ,width = 6, bg = 'royal blue1', activebackground = 'sky blue'] block.place[x = 230, y = 150] root.mainloop[]
Khi chúng ta nhấn vào nút Block nó sẽ gọi chức năng Blocker
- Button [] – được sử dụng để hiển thị nút trên cửa sổ của chúng tôi
- lệnh - được gọi khi chúng ta nhấp vào nút
- activebackground – đặt màu nền để sử dụng khi nhấp vào nút
Đầu ra dự án trình chặn trang web
Tóm lược
Chúng tôi đã phát triển thành công dự án python Website Blocker. Chúng tôi đã sử dụng thư viện Tkinter phổ biến để hiển thị đồ họa trên cửa sổ hiển thị và khái niệm cơ bản về lập trình python