首页
友链
推荐
红枫百科[AI]
Windows系统激活
Search
1
QQ9.7.20永久禁止(QQ/NT)自动更新
60 阅读
2
DnF台服:账号任务实现演示
28 阅读
3
记录CentOS系统下检测端口访问并记录访问日志的教程
22 阅读
4
如何查询微信是被谁举报投诉的?
20 阅读
5
Centos系统还原官方yum源
19 阅读
闲言碎语
运维笔记
教程笔记
网站源码
其他源码
值得一看
DNF台服
登录
/
注册
Search
Gcn
累计撰写
69
篇文章
累计收到
0
条评论
首页
栏目
闲言碎语
运维笔记
教程笔记
网站源码
其他源码
值得一看
DNF台服
页面
友链
推荐
红枫百科[AI]
Windows系统激活
搜索到
69
篇与
的结果
2026-03-28
《闲鱼自动发货》程序,源码及python配置分享。
我之前的号上是有一些商品的,所以我想配置一下自动发货,但是我突然想起来,闲鱼最近有个很热门的免费自动发货软件,我想试试看。我就找了一下。先看下环境要求:Python: 3.11+ Node.js: 16+ (用于JavaScript执行) 系统: Windows/Linux/macOS 内存: 建议2GB+存储: 建议10GB+ Docker: 20.10+ (Docker部署) Docker Compose: 2.0+ (Docker部署) 如果你有Docker,或者是 Win10 22H2 或 Win11 23H2 以上,可以安装。 有这个可以一键安装。我就没有,我的是10专业版,下不了,于是用 python 方案来安装的。这个是纯小白方案,不会的也可以一步步的来安装。第一步:去 python.org 下载 Windows 的 Python 3.11.9 安装包(64-bit)安装时勾上: Add python.exe to PATH第二步:在你的源码目录创建虚拟环境(用 3.11.9) 在源码文件夹空白处:Shift + 右键 → “在此处打开 PowerShell”(这个一定要打开,蓝色执行命令界面)然后执行(照抄): py -3.11 -m venv venv.\\venv\\Scripts\\activate 激活后,你命令行前面会出现 (venv)。输入命令: python -V 确认输出是 Python 3.11.x(显示 3.11.9)依次输出命令,回车,等待回传。第三步:安装依赖python -m pip install -U pippip install -r requirements.txt 依次输出命令,回车,等待命令完成。第四步:安装 Playwright 浏览器(项目需要它)执行: playwright install chromium (这一步可能会下载几百 MB,正常。)第五步:启动执行命令: python Start.py 启动后按文档访问: http://localhost:8080 只要步骤没错,基本上,就能启动闲鱼自动发货了。源码下载:隐藏内容,请前往内页查看详情
2026年03月28日
3 阅读
0 评论
0 点赞
2026-03-28
整了几个简洁的单页HTML模板
{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Anye - Always Nurturing Your Enthusiasm</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; min-height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } .avatar { width: 150px; height: 150px; border-radius: 50%; margin-bottom: 20px; border: 4px solid var(--link-color); transition: border-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 10px; font-size: 2.5em; transition: color 0.3s; } .signature { font-style: italic; margin-bottom: 20px; color: var(--link-color); } .contact-links { display: flex; justify-content: center; gap: 20px; margin-top: 20px; } .contact-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s, transform 0.3s; display: inline-flex; align-items: center; gap: 5px; } .contact-link:hover { transform: scale(1.1); } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <img src="你的logo链接" alt="Logo" class="avatar"> <h1>Name</h1> <p class="signature">个性签名</p> <div class="contact-links"> <a href="https://github.com/" class="contact-link" target="_blank" rel="noopener noreferrer"> <i class="fab fa-github"></i> GitHub </a> <a href="mailto:Youremail" class="contact-link"> <i class="fas fa-envelope"></i> Email </a> <a href="https://t.me/" class="contact-link" target="_blank" rel="noopener noreferrer"> <i class="fab fa-telegram"></i> Telegram </a> </div> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html>{/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>404 Not Found</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2.5em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .back-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s; } .back-link:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🔍</div> <h1>404 Not Found</h1> <p>抱歉,您请求的页面不存在。</p> <p>可能是输入的网址有误,或者该页面已被移动或删除。</p> <a href="/" class="back-link">返回首页</a> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>404 Not Found</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2.5em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .back-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s; } .back-link:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🔍</div> <h1>404 Not Found</h1> <p>抱歉,您请求的页面不存在。</p> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="robots" content="noindex,nofollow"> <title>恭喜,站点创建成功!</title> <style> :root { --bg-color: #f0f0f0; --text-color: #333; --link-color: #007bff; --container-bg: #ffffff; } .dark-mode { --bg-color: #333; --text-color: #f0f0f0; --link-color: #66b2ff; --container-bg: #1c1c1e; } body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); line-height: 1.6; margin: 0; padding: 20px; transition: background-color 0.3s, color 0.3s; } .container { width: 90%; max-width: 600px; margin: 10% auto 0; background-color: var(--container-bg); padding: 30px; border-radius: 10px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); transition: background-color 0.3s; } h1 { color: var(--link-color); margin-top: 0; } ul { padding-left: 20px; } li { margin-bottom: 10px; } a { color: var(--link-color); text-decoration: none; } a:hover { text-decoration: underline; } .theme-toggle { position: fixed; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); font-size: 24px; cursor: pointer; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 600px) { .container { width: 100%; padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <h1>恭喜,站点创建成功!</h1> <h3>这是默认index.html,本页面由系统自动生成</h3> <p>您可以随时修改、删除或替换此页面。以下是一些有用的链接:</p> <ul> <li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/HTML/Introduction_to_HTML" target="_blank" rel="noopener noreferrer">HTML入门教程</a></li> <li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/CSS/First_steps" target="_blank" rel="noopener noreferrer">CSS入门教程</a></li> <li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/JavaScript/First_steps" target="_blank" rel="noopener noreferrer">JavaScript入门教程</a></li> </ul> <p>祝您开发顺利!</p> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>PHP 信息页面</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); line-height: 1.6; margin: 0; padding: 20px; transition: background-color 0.3s, color 0.3s; } .container { max-width: 800px; margin: 0 auto; background-color: var(--card-bg); padding: 20px; border-radius: 8px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } h1, h2 { color: var(--heading-color); } h1 { text-align: center; margin-bottom: 30px; } ul, ol { padding-left: 20px; } li { margin-bottom: 5px; } .theme-toggle { position: fixed; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 600px) { body { padding: 10px; } .container { padding: 15px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <h1>欢迎使用 PHP!</h1> <h2>版本信息</h2> <ul> <li>PHP版本:<?php echo PHP_VERSION; ?></li> </ul> <h2>已安装扩展</h2> <ol> <?php foreach (get_loaded_extensions() as $name) { echo "<li>$name = " . phpversion($name) . "</li>"; } ?> </ol> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>404 Not Found</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; --footer-color: #666; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; --footer-color: #999; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 500px; width: 100%; margin-bottom: 20px; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .footer { text-align: center; font-size: 12px; color: var(--footer-color); margin-top: 20px; transition: color 0.3s; } .footer a { color: var(--footer-color); text-decoration: none; transition: color 0.3s; } .footer a:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🛠️</div> <h1>网站维护中</h1> <p>非常抱歉,我们的网站正在进行例行维护。我们正在努力改进,以便为您提供更好的服务。</p> <p>预计恢复时间:<strong>未知</strong></p> <p>感谢您的耐心等待和理解。</p> </div> <footer class="footer"> <a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener noreferrer">ICP备案号</a> | <a href="http://www.beian.gov.cn/portal/registerSystemInfo" target="_blank" rel="noopener noreferrer">公安备案号</a> </footer> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>请求拦截</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #e74c3c; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #e74c3c; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2.5em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .back-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s; } .back-link:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🛑</div> <h1>请求拦截</h1> <p>请求携带恶意参数 已被拦截</p> <p>为了保护系统安全,您的请求已被系统拦截。</p> <a href="/" class="back-link">返回首页</a> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>网站不存在</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2.5em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .back-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s; } .back-link:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🌐</div> <h1>网站不存在</h1> <p>网站不存在,请检查域名</p> <a href="javascript:history.back()" class="back-link">返回上一页</a> </div> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Access Denied</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2.5em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } .language-toggle { position: absolute; top: 20px; left: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .language-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="Toggle theme">🌓</button> <button class="language-toggle" onclick="toggleLanguage()" aria-label="Toggle language">🌐</button> <div class="container" role="main"> <div class="icon" aria-hidden="true">🚫</div> <h1 id="title">Access Denied</h1> <p id="message">Your region is blocked from accessing this content.</p> </div> <script> const translations = { en: { title: "Access Denied", message: "Your region is blocked from accessing this content.", themeLabel: "Toggle theme", langLabel: "Toggle language" }, zh: { title: "地区拦截", message: "你的区域被禁止访问", themeLabel: "切换主题", langLabel: "切换语言" } }; let currentLang = navigator.language.startsWith('zh') ? 'zh' : 'en'; function updateContent() { document.getElementById('title').textContent = translations[currentLang].title; document.getElementById('message').textContent = translations[currentLang].message; document.querySelector('.theme-toggle').setAttribute('aria-label', translations[currentLang].themeLabel); document.querySelector('.language-toggle').setAttribute('aria-label', translations[currentLang].langLabel); document.documentElement.lang = currentLang; } function toggleLanguage() { currentLang = currentLang === 'en' ? 'zh' : 'en'; updateContent(); } function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); updateContent(); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>IP 黑名单拦截</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 400px; width: 100%; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; font-size: 2em; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .contact-link { color: var(--link-color); text-decoration: none; font-weight: bold; transition: color 0.3s; } .contact-link:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <main class="container"> <div class="icon" aria-hidden="true">🚫</div> <h1>黑名单拦截</h1> <p>很抱歉,您的 IP 被禁止访问</p> <p>如果您认为这是一个错误,请联系我们的支持团队。</p> <a href="mailto:youremail" class="contact-link">联系支持</a> </main> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}{collapse}{collapse-item label="查看源码"}<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>停止服务</title> <style> :root { --bg-color: #f0f2f5; --text-color: #333; --card-bg: white; --heading-color: #2c3e50; --link-color: #3498db; --footer-color: #666; } .dark-mode { --bg-color: #1a1a1a; --text-color: #e0e0e0; --card-bg: #2c2c2c; --heading-color: #ffffff; --link-color: #63b3ed; --footer-color: #999; } body { font-family: Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; margin: 0; padding: 20px; box-sizing: border-box; transition: background-color 0.3s, color 0.3s; } .container { background-color: var(--card-bg); border-radius: 8px; padding: 40px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); text-align: center; max-width: 500px; width: 100%; margin-bottom: 20px; transition: background-color 0.3s; } h1 { color: var(--heading-color); margin-bottom: 20px; transition: color 0.3s; } p { line-height: 1.6; margin-bottom: 20px; } .icon { font-size: 64px; margin-bottom: 20px; } .footer { text-align: center; font-size: 12px; color: var(--footer-color); margin-top: 20px; transition: color 0.3s; } .footer a { color: var(--footer-color); text-decoration: none; transition: color 0.3s; } .footer a:hover { text-decoration: underline; } .theme-toggle { position: absolute; top: 20px; right: 20px; background: none; border: none; color: var(--text-color); cursor: pointer; font-size: 24px; transition: transform 0.3s; } .theme-toggle:hover { transform: scale(1.1); } @media (max-width: 480px) { .container { padding: 20px; } } </style> </head> <body> <button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button> <div class="container"> <div class="icon">🚧</div> <h1>停止服务</h1> <p>非常抱歉,由于XXX,本服务即日起停止运营。</p> </div> <footer class="footer"> <a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener noreferrer">ICP备案号</a> | <a href="http://www.beian.gov.cn/portal/registerSystemInfo" target="_blank" rel="noopener noreferrer">公网安备号</a> </footer> <script> function toggleTheme() { document.body.classList.toggle('dark-mode'); localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light'); } const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-mode'); } const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); function handleThemeChange(e) { if (savedTheme) return; if (e.matches) { document.body.classList.add('dark-mode'); } else { document.body.classList.remove('dark-mode'); } } mediaQuery.addListener(handleThemeChange); handleThemeChange(mediaQuery); </script> </body> </html> {/collapse-item}{/collapse}Halo Pro “金色传说”{collapse}{collapse-item label="查看源码"}<script> /* Halo Pro */ document.addEventListener('DOMContentLoaded', function () { const generatorContent = document.querySelector('meta[name="generator"]').getAttribute('content').replace("Halo ", "Halo Pro "); const link = document.querySelector('footer a[href="https://halo.run"]'); link.textContent = generatorContent; }); </script> <style> /* 页脚的链接文本动画效果 */ @keyframes maskedAnimation { 0% { background-position: 0 0; } 100% { background-position: -100% 0; } } footer a[href="https://halo.run"] { font-weight: bold; background-image: -webkit-linear-gradient(left, #ffdd00, #3e2f08 25%, #ffdd00 50%, #3e2f08 75%, #ffdd00); -webkit-text-fill-color: transparent; -webkit-background-clip: text; -webkit-background-size: 200% 100%; -webkit-animation: maskedAnimation 1s infinite linear; } </style> {/collapse-item}{/collapse}本站公告弹窗{collapse}{collapse-item label="查看源码"}<script> /* 站点弹窗公告 */ document.addEventListener('DOMContentLoaded', function() { if (document.cookie.indexOf('modalManuallyClosed=true') !== -1) { return; } var modal = document.createElement('div'); var isDarkMode = document.documentElement.classList.contains('dark'); modal.style.cssText = ` position: fixed; top: 20px; right: -350px; width: 300px; background-color: ${isDarkMode ? 'rgba(30, 41, 59, 0.9)' : 'rgba(255, 255, 255, 0.9)'}; backdrop-filter: blur(5px); padding: 20px; border-radius: 15px; box-shadow: 0 4px 20px rgba(0,0,0,0.15); z-index: 1000; transition: right 0.3s ease-in-out, background-color 0.3s ease; font-family: Arial, sans-serif; font-size: 16px; line-height: 1.5; color: ${isDarkMode ? '#e2e8f0' : 'inherit'}; `; var content = document.createElement('div'); content.innerHTML = ` <strong style="font-size: 18px; display: block; margin-bottom: 10px; padding-right: 20px;">公告</strong> <p style="margin: 0; padding-right: 20px;"> 站点公告内容 </p> `; modal.appendChild(content); var closeButton = document.createElement('span'); closeButton.textContent = '×'; closeButton.style.cssText = ` position: absolute; top: 10px; right: 15px; font-size: 24px; color: ${isDarkMode ? '#9ca3af' : '#999'}; cursor: pointer; width: 30px; height: 30px; line-height: 30px; text-align: center; background-color: transparent; border-radius: 50%; transition: background-color 0.2s, color 0.2s; `; closeButton.onmouseover = function() { this.style.backgroundColor = isDarkMode ? '#4b5563' : '#f0f0f0'; this.style.color = isDarkMode ? '#e2e8f0' : '#333'; }; closeButton.onmouseout = function() { this.style.backgroundColor = 'transparent'; this.style.color = isDarkMode ? '#9ca3af' : '#999'; }; function closeModal(isManual) { modal.style.right = '-350px'; setTimeout(function() { document.body.removeChild(modal); }, 300); if (isManual) { // 设置 cookie,有效期为 30 天 var date = new Date(); date.setTime(date.getTime() + (30 * 24 * 60 * 60 * 1000)); document.cookie = "modalManuallyClosed=true; expires=" + date.toUTCString() + "; path=/"; } } closeButton.onclick = function() { clearAutoCloseTimer(); closeModal(true); // 传入 true 表示手动关闭 }; modal.appendChild(closeButton); document.body.appendChild(modal); setTimeout(function() { modal.style.right = '20px'; }, 50); var autoCloseTimer; var timeoutExpired = false; function startAutoCloseTimer() { autoCloseTimer = setTimeout(function() { timeoutExpired = true; if (!modal.matches(':hover')) { closeModal(false); // 传入 false 表示自动关闭 } }, 4000); } function clearAutoCloseTimer() { clearTimeout(autoCloseTimer); } startAutoCloseTimer(); modal.onmouseenter = function() { clearAutoCloseTimer(); }; modal.onmouseleave = function() { if (timeoutExpired) { closeModal(false); // 传入 false 表示自动关闭 } else { startAutoCloseTimer(); } }; }); </script>{/collapse-item}{/collapse}
2026年03月28日
3 阅读
0 评论
0 点赞
2026-03-22
WINDOS系统更新暂停/恢复助手
核心原理就是通过暂停系统更新来实现系统不更新暂停时间是99年脚本是bta运行请管理员权限运行哦{cloud title="win系统暂停更新助手.zip" type="default" url="https://d.tiansj.net/usr/uploads/2026/03/3051308615.zip" password=""/}
2026年03月22日
3 阅读
0 评论
0 点赞
2026-03-18
Linux vi/vim编辑器常用命令与用法总结
(一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便。vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本、C语言程序编辑等功能,可以作为程序编辑器。(二)为什么要学习vi/vim?首先所有的Linux发行版系统上都会默认内置vi编辑器,而不一定带有其他文本编辑器,非常通用;其次,很多软件的编辑接口都会默认调用vi;第三,vi具有程序编辑的能力;最后,vi程序简单,编辑速度相当快速。(三)vi的三种模式及各个模式之间的转换关系Linux vi/vim编辑器常用命令与用法总结 Linux 博客 系统 网页 第1张(四)一般模式常用操作【h(或向左方向键)】 光标左移一个字符 【h(或向左方向键)】 光标左移一个字符 【j(或向下方向键)】 光标下移一个字符 【k(或向上方向键)】 光标上移一个字符 【l(或向右方向键)】 光标右移一个字符 【[Ctrl] + f】 屏幕向下移动一页(相当于Page Down键) 【[Ctrl] + b】 屏幕向上移动一页(相当于Page Up键) 【[0]或[Home]】 光标移动到当前行的最前面 【[$]或[End]】 光标移动到当前行的末尾 【G】 光标移动到文件的最后一行(第一个字符处) 【nG】 n为数字(下同),移动到当前文件中第n行 【gg】 移动到文件的第一行,相当于"1G" 【n[Enter]】 光标向下移动n行 【/word】 在文件中查找内容为word的字符串(向下查找) 【?word】 在文件中查找内容为word的字符串(向上查找) 【[n]】 表示重复查找动作,即查找下一个 【[N]】 反向查找下一个 【:n1,n2s/word1/word2/g】 n1、n2为数字,在第n1行到第n2行之间查找word1字符串,并将其替换成word2 【:1,】从第一行(第行同理)到最后一行查找注册,并将其替换成【s/word1/word2/g】从第一行(第n行同理)到最后一行查找word1注册,并将其替换成word2【:1,s/word1/word2/gc】 功能同上,只不过每次替换时都会让用户确认 【x,X】 x为向后删除一个字符,相当于[Delete],X为向前删除一个字符,相当于[Backspace] 【dd】 删除光标所在的一整行 【ndd】 删除光标所在的向下n行 【yy】 复制光标所在的那一行 【nyy】 复制光标所在的向下n行 【p,P】 p为将已经复制的数据在光标下一行粘贴;P为将已经复制的数据在光标上一行粘贴 【u】 撤消上一个操作 【[Ctrl] + r】 多次撤消 【.】 这是小数点键,重复上一个操作(五)一般模式切换到编辑模式的操作1、进入插入模式(6个命令)【i】 从目前光标所在处插入 【I】 从目前光标 【a】 从当前光标所在的下一个字符处开始插入 【A】 从光标所在行的最后一个字符处开始插入 【o】 英文小写字母o,在目前光标所在行的下一行处插入新的一行并开始插入 【O】 英文大写字母O,在目前光标所在行的上一行处插入新的一行并开始插入2、进入替换模式(2个命令)【r】 只会替换光标所在的那一个字符一次 【R】 会一直替换光标所在字符,直到按下[ESC]键为止 【[ESC]】 退出编辑模式回到一般模式(六)一般模式切换到命令行模式【:w】 保存文件 【:w!】 若文件为只读,强制保存文件 【:q】 离开vi 【:q!】 不保存强制离开vi 【:wq】 保存后离开 【:wq!】 强制保存后离开 【:! command】 暂时离开vi到命令行下执行一个命令后的显示结果 【:set nu】 显示行号 【:set nonu】 取消显示行号 【:w newfile】 另存为(七)文件恢复模式【[O]pen Read-Only】 以只读方式打开文件 【[E]dit anyway】 用正常方式打开文件,不会载入暂存文件内容 【[R]ecover】 加载暂存文件内容 【[D]elete it】 用正常方式打开文件并删除暂存文件 【[Q]uit】 按下q就离开vi,不进行其他操作 【[A]bort】 与quit功能类似(八)块选择(一般模式下用)【v,V】 v:将光标经过的地方反白选择;V:将光标经过的行反白选择 【[Ctrl] + v】 块选择,可用长方形的方式选择文本 【y】 将反白的地方复制到剪贴板 【d】 将反白的内容删除(九)vim配置文件vim的配置文件为/etc/vimrc,但一般不建议直接修改这个文件,而是在用户根目录下创建一个新的隐藏文件: vim ~/.vimrc 然后编辑这个文件,常用的配置如下: "双引号后面的内容为注释 set nu "显示行号 set hlsearch "查找的字符串反白显示 set backspace=2 "可随时用退格键进行删除 set autoindent "自动缩排 set ruler "在最下方一行显示状态 set showmode "在左下角显示模式 set bg=dark "显示不同的底色,还可以为light syntax on "语法检验,颜色显示
2026年03月18日
4 阅读
0 评论
0 点赞
2026-03-18
国内开源镜像站点汇总
站点版企业站搜狐:http://mirrors.sohu.com/腾讯:https://mirrors.cloud.tencent.com//网易:http://mirrors.163.com/阿里:http://mirrors.aliyun.com/华为:https://mirrors.huaweicloud.com/教育站上海交通大学:http://ftp.sjtu.edu.cn/html/resources.xml(部分移动运营商出口状况不佳,无法访问)华中科技大学:http://mirror.hust.edu.cn/(当前已用容量估计:4.83T)清华大学:http://mirrors.tuna.tsinghua.edu.cn/(当前已用容量估计:9.8T)北京理工大学:http://mirror.bit.edu.cn/web/兰州大学:http://mirror.lzu.edu.cn/中国科技大学:http://mirrors.ustc.edu.cn/(当前已用容量估计:21.32T)大连东软信息学院:http://mirrors.neusoft.edu.cn/(当前已用容量估计:2.5T)东北大学:http://mirror.neu.edu.cn/大连理工大学:http://mirror.dlut.edu.cn/哈尔滨工业大学:http://run.hit.edu.cn/html/(部分联通运营商出口状况不佳,无法访问)北京交通大学:http://mirror.bjtu.edu.cn/cn/中国地质大学:http://mirrors.cug.edu.cn/(当前已用容量估计:2.3T)浙江大学:http://mirrors.zju.edu.cn/厦门大学:http://mirrors.xmu.edu.cn/中山大学:http://mirror.sysu.edu.cn/重庆大学:http://mirrors.cqu.edu.cn/(当前已用容量估计:3.93T)北京化工大学:http://ubuntu.buct.edu.cn/(AndroidSDK镜像仅供校内使用,当前已用容量估计:1.72T)南阳理工学院:http://mirror.nyist.edu.cn/中国科学院:http://www.opencas.org/mirrors/电子科技大学星辰工作室:http://mirrors.stuhome.net/(当前已用容量估计:1.08T)西北农林科技大学:http://mirrors.nwsuaf.edu.cn/(只做CentOS镜像,当前已用容量估计:140GB)软件版操作系统类CentOS网易:http://mirrors.163.com/centos/搜狐:http://mirrors.sohu.com/centos/阿里云:http://mirrors.aliyun.com/centos/Ubuntu阿里云:http://mirrors.aliyun.com/ubuntu-releases/网易:http://mirrors.163.com/ubuntu-releases/搜狐:http://mirrors.sohu.com/ubuntu-releases/(搜狐在12年之后似乎不同步了)首都在线科技股份有限公司:http://mirrors.yun-idc.com/ubuntu-releases/MySQL搜狐:http://mirrors.sohu.com/mysql中国科技技术大学:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads官方镜像列表状态地址CentOS:http://mirror-status.centos.org/#cnArchlinux:https://www.archlinux.org/mirrors/status/Ubuntu:https://launchpad.net/ubuntu/+cdmirrorsDebian:http://mirror.debian.org/status.htmlFedoraLinux/FedoraEPEL:https://admin.fedoraproject.org/mirrormanager/mirrorsApache:http://www.apache.org/mirrors/#cnCygwin:https://www.cygwin.com/mirrors.html
2026年03月18日
6 阅读
0 评论
0 点赞
1
2
3
4
...
14