不想让别人知道我的宝藏网站
没明白你意思,能否具体说明一下
我猜是这样,他想要一个贴纸,可以固定挡住网站域名
是的,就是这样 你这哪来的啊
他这个应该是贴的图
3 Likes
你可以看下这个,我不知道是否可以达到你要的效果
3 Likes
我用的Vivaldi浏览器可以直接隐藏整个地址栏
这个肯定是不行的,这个就是一个链接跳转
确实
4 Likes
搞个python吧。
总结
from tkinter import colorchooser, Canvas, BOTH, Tk
from os import path, makedirs
from json import load, dump
from pystray import MenuItem as item, Icon
from PIL import Image, ImageDraw
from keyboard import add_hotkey
CONFIG_PATH = path.join(path.expanduser("~"), 'temp', 'resizable_rectangle_config.json')
class ResizableRectangle:
def __init__(self, root):
self.root = root
self.root.attributes('-topmost', True)
self.root.overrideredirect(True)
self.load_config()
self.rect = Canvas(root, bg=self.rect_color, highlightthickness=0)
self.rect.pack(fill=BOTH, expand=True)
self.rect.bind('<Button-1>', self.start_move_or_resize)
self.rect.bind('<B1-Motion>', self.on_move_or_resize)
self.rect.bind('<ButtonRelease-1>', self.reset_flags)
self.rect.bind('<Button-3>', self.choose_color)
self.rect.bind('<Double-1>', self.minimize_to_tray)
self.rect.bind('<Motion>', self.check_corner)
self.rect.bind('<MouseWheel>', self.on_wheel)
self.resizing = False
self.moving = False
self.in_corner = False
self.tray_icon = None
self.create_tray_icon()
add_hotkey('alt+g', self.toggle_minimize_restore)
def start_move_or_resize(self, event):
self.start_x = event.x
self.start_y = event.y
self.orig_x = self.root.winfo_x()
self.orig_y = self.root.winfo_y()
self.orig_width = self.root.winfo_width()
self.orig_height = self.root.winfo_height()
if self.in_corner:
self.resizing = True
else:
self.moving = True
def on_move_or_resize(self, event):
if self.moving:
delta_x = event.x - self.start_x
delta_y = event.y - self.start_y
new_x = self.orig_x + delta_x
new_y = self.orig_y + delta_y
self.root.geometry(f'+{new_x}+{new_y}')
elif self.resizing:
delta_width = event.x - self.start_x
delta_height = event.y - self.start_y
new_width = max(self.orig_width + delta_width, 1)
new_height = max(self.orig_height + delta_height, 1)
self.root.geometry(f'{new_width}x{new_height}+{self.orig_x}+{self.orig_y}')
self.save_config()
def choose_color(self, event):
color = colorchooser.askcolor(title="Choose Color")
if color[1]:
self.rect_color = color[1]
self.rect.config(bg=self.rect_color)
self.save_config()
def close_window(self, icon, item):
icon.stop()
self.tray_icon = None
self.root.quit()
def reset_flags(self, event):
self.moving = False
self.resizing = False
def check_corner(self, event):
margin = 10
width = self.root.winfo_width()
height = self.root.winfo_height()
if event.x >= width - margin and event.y >= height - margin:
self.in_corner = True
self.rect.config(cursor='size_nw_se')
else:
self.in_corner = False
self.rect.config(cursor='arrow')
def on_wheel(self, event):
scale = 1.1 if event.delta > 0 else 0.9
width = int(self.root.winfo_width() * scale)
height = int(self.root.winfo_height() * scale)
x = self.root.winfo_x()
y = self.root.winfo_y()
self.root.geometry(f'{width}x{height}+{x}+{y}')
self.save_config()
def minimize_to_tray(self, event=None):
self.root.withdraw()
self.tray_icon.visible = True
def restore_from_tray(self, icon, item):
self.root.deiconify()
self.tray_icon.visible = False
def toggle_minimize_restore(self):
if self.root.state() == 'withdrawn':
self.restore_from_tray(None, None)
else:
self.minimize_to_tray()
def reset_to_initial(self, icon, item):
self.root.geometry('100x100+100+100')
self.rect.config(bg='white')
self.save_config()
def create_tray_icon(self):
image = Image.new('RGB', (64, 64), color='white')
draw = ImageDraw.Draw(image)
draw.rectangle([0, 0, 63, 63], outline='black', width=2)
menu = (
item('Restore', self.restore_from_tray),
item('Reset', self.reset_to_initial),
item('Exit', lambda icon, item: self.close_window(icon, item))
)
self.tray_icon = Icon("ResizableRectangle", image, "Resizable Rectangle", menu)
self.tray_icon.run_detached()
def save_config(self):
config = {
'geometry': self.root.geometry(),
'color': self.rect_color
}
makedirs(path.dirname(CONFIG_PATH), exist_ok=True)
with open(CONFIG_PATH, 'w') as f:
dump(config, f)
def load_config(self):
if path.exists(CONFIG_PATH):
with open(CONFIG_PATH, 'r') as f:
config = load(f)
self.root.geometry(config.get('geometry', '100x100+100+100'))
self.rect_color = config.get('color', 'white')
else:
self.rect_color = 'white'
self.root.geometry('100x100+100+100')
if __name__ == "__main__":
root = Tk()
app = ResizableRectangle(root)
root.mainloop()
咱也确实是没啥办法,刚刚突然想起来用py弄个小工具也能解决。
https://wwk.lanzouo.com/iHNcF236il1c 密码:f9ek
2 Likes
插件和脚本都是在浏览器里执行的,你要遮挡的是浏览器本身的窗口的一部分,插件和脚本肯定是不行的。可以写个程序,创建一个置顶窗口把url挡掉。或者浏览器里按f11,全屏就不显示url了。也可以试试把你要访问的网站以app的方式(启动参数里)打开,也是不显示url的
1 Like
好不方便,你这样打错地址了自己都不知道
小火汁需求挺怪,喜欢大庭广众的访问小网站是吧
1 Like
最简单的方法:F11
1 Like
这个需求太太小众了
1 Like
这也太麻烦了吧
试试用浏览器的APP模式启动
如果是chrome浏览器,在CMD或Powershell 里输入命令
start chrome --app=https://linux.do
如果start chrome 启动不了,就换成chrome的路径(不同安装方法的路径可能不一样),比如我的CMD命令是:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --app=https://linux.do
如果是edge 浏览器,CMD命令是:
start msedge --app=https://linux.do
也可以把上面的命令存储到一个bat文件,点开就行。
使用效果:
7 Likes
如果是你视频录播用,可以考虑弄嵌套网页,如果你是给别人用,那建议弄了app,直接放进去。还要屏蔽抓包,虽然只能防些技术很低的人
1 Like