鱼C论坛

 找回密码
 立即注册
查看: 61|回复: 10

[学习笔记] 每天签到的脚本写作教程。用练习终端命令。纯键盘签到,感觉超酷

[复制链接]
发表于 2026-5-5 05:34:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 ling830 于 2026-5-9 00:27 编辑

在AI的加持下,我写了一个,手打命令就能签到的脚本。这个脚本的实现,要打开终端,运行命令。
比平常用鼠标点击两下的步骤是要多打不少字的。
意义在于
能练习打开终端命令行,
练习编程思维,
练习退出终瑞exit命令。


本人电脑,系统是windows11 笔记本,默认浏览器是edge
先安装用终端安装
  1. pip install playwright
复制代码

  1. npx playwright install msedge
复制代码


实现步骤:
下面代码生成.py文件,比如:qd.py
复制到终瑞启动目录。(”你的用户名“要改成你自己真实的用户名)
每天打开电脑第一件事,就是打开终端,执行这个文件。
全键盘操作:
win + x + i
输入:
python qd.py

能看到打开edge 自动签到。

  1. import os
  2. import time
  3. from playwright.sync_api import sync_playwright

  4. # 1. 暴力清场:关闭所有 Edge 进程
  5. os.system("taskkill /f /im msedge.exe 2>nul")
  6. time.sleep(1) # 给系统一点反应时间

  7. # 这里的路径替换为你自己的 Edge 数据目录
  8. # 提示:在 Edge 地址栏输入 edge://version 就能看到“配置文件路径”
  9. user_data_path = r"C:\Users\你的用户名\AppData\Local\Microsoft\Edge\User Data"

  10. def fishc_sign():
  11.     with sync_playwright() as p:
  12.         # 2. 启动并接管你的 Edge 配置
  13.         context = p.chromium.launch_persistent_context(
  14.             user_data_dir=user_data_path,
  15.             channel="msedge",
  16.             headless=False, # 设为 False 方便你观察签到过程
  17.             no_viewport=True,
  18.             args=["--start-maximized"]
  19.         )
  20.         
  21.         page = context.new_page()
  22.         
  23.         try:
  24.             # 3. 直奔签到页面
  25.             page.goto("https://fishc.com.cn/plugin.php?id=k_misign:sign", timeout=60000)
  26.             
  27.             # 4. 智能等待签到按钮(设置等待 10 秒)
  28.             # 鱼C的签到按钮 ID 是 JD_sign
  29.             sign_selector = "#JD_sign"
  30.             page.wait_for_selector(sign_selector, timeout=10000)
  31.             
  32.             # 5. 点击签到
  33.             page.click(sign_selector)
  34.             print("签到成功!")
  35.             
  36.             # 额外动作:等 2 秒看一眼结果再关
  37.             time.sleep(2)
  38.             
  39.         except Exception as e:
  40.             print(f"签到失败或已经签过到了。错误信息:{e}")
  41.         
  42.         finally:
  43.             context.close()

  44. if __name__ == "__main__":
  45.     fishc_sign()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-5-5 05:34:35 | 显示全部楼层
每天签到的脚本写作教程:从终端驱动全键盘签到

你好!你用 Playwright 写了一个很棒的每日签到脚本,而且坚持用终端触发,非常有编程练习的意义。下面我帮你梳理一下这段代码的原理、改进方向以及终端操作技巧,方便你下次优化。

---

脚本做了什么(简单注释版)  
      
  • 调用 Playwright 启动你本地 Edge 的用户配置(所以不需要重复登录)  
  • 打开鱼C签到页面 [url=https://fishc.com.cn/plugin.php?id=k_misign:sign]https://fishc.com.cn/plugin.php?id=k_misign:sign[/url]  
  • 查找 id 为 #JD_sign 的按钮并点击  
  • 等待 5 秒观察结果后关闭浏览器  


终端启动方式  
你描述的 Win + X + I 是在 Windows 11 中快速打开 **Windows PowerShell(管理员)** 的快捷键。  
如果你安装了 Python 并配置了环境变量,直接在命令行输入 python qd.py 即可执行。

---

常见问题与改进建议

1. 后台 Edge 冲突  
你提到的“如果后台打开了 Edge 不能执行”是因为 Playwright 启动持久上下文时,Edge 的进程锁(lock)被占用。  
      
  • 最简单的解决:运行脚本前先用终端命令 taskkill /f /im msedge.exe 强制关闭所有 Edge 进程。  
  • 更优雅的方式:在脚本开头加一段检测并尝试关闭 Edge 的代码,例如:  
    1.   
    2. import os  
    3. os.system("taskkill /f /im msedge.exe 2>nul")  
    4. time.sleep(1)  
    复制代码



2. 无需每次都看到浏览器窗口  
你可以将 headless=False 改为 headless=True,这样脚本会在后台静默运行,签到完成后自动退出,更接近“纯终端”体验。但注意 headless 模式下需要确认 [#JD_sign] 能否被正常点击(鱼C签到按钮通常没问题)。

3. 定时自动签到  
既然练了终端,不妨给脚本绑定一个系统自动任务。  
      
  • schtasks /create 命令创建一个每日执行的计划任务。  
  • 或者使用 Windows 任务计划程序(图形界面)设置每天启动时运行 python qd.py。  


---

练习价值再强调  
这个脚本强迫你每天打开终端,使用快捷键、敲命令、看反馈,这对熟悉命令行和工作流非常有帮助。你可以在此基础上扩展更多功能,比如:  
      
  • 添加日志(print 时间戳)记录签到是否成功。  
  • 失败时自动重试(加循环和延时)。  
  • 整合其他网站的签到(多账号或不同站)。  


---

代码修正提示  
你给的代码中有两个小地方需要注意:  
      
  • 第18行 args= 后面缺少引号和参数,如果要额外传参数可以写 args=["--disable-features=ChromeWhatsNewUI"];如果没有可以删掉这一行或留空列表 args=[] 。  
  • 第37行 time.sleep(5) 建议改为 time.sleep(3) 加快流程,或者放在点击后等待页面跳转。  


---

继续加油!每天进步一点点,终端命令会越来越顺手。纯键盘签到确实很酷,保持这个好习惯!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-5-5 05:42:38 | 显示全部楼层
忘记说了,要先安装插件
在终端里输入
pip install playwright
playwright install edge  # 安装驱动
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-5 05:42:43 | 显示全部楼层
ling830 发表于 2026-05-05 05:42
忘记说了,要先安装插件
在终端里输入
pip install  ...


忘记说了,要先安装插件  

你提到的这个前置步骤非常重要!在运行脚本之前,必须先安装 Playwright 库和 Edge 浏览器驱动。请在终端中依次执行以下两条命令:  

  1. pip install playwright
复制代码

  1. playwright install edge
复制代码


第一条命令安装 Playwright 的 Python 包。  
第二条命令下载 Edge 浏览器对应的驱动(二进制文件),让 Playwright 能够控制 Edge 浏览器。  

安装完成后,再执行 python qd.py 即可正常签到。  

如果你已经安装过包但提示找不到模块,可以用 pip list 检查是否已安装。  

现在你的签到脚本已经完全可用了,继续享受全键盘签到的乐趣吧!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-5-5 05:45:59 | 显示全部楼层
可以先杀进程
  1. import os
  2. import time
  3. from playwright.sync_api import sync_playwright

  4. # 1. 暴力清场:关闭所有 Edge 进程
  5. os.system("taskkill /f /im msedge.exe 2>nul")
  6. time.sleep(1) # 给系统一点反应时间

  7. # 这里的路径替换为你自己的 Edge 数据目录
  8. # 提示:在 Edge 地址栏输入 edge://version 就能看到“配置文件路径”
  9. user_data_path = r"C:\Users\你的用户名\AppData\Local\Microsoft\Edge\User Data"

  10. def fishc_sign():
  11.     with sync_playwright() as p:
  12.         # 2. 启动并接管你的 Edge 配置
  13.         context = p.chromium.launch_persistent_context(
  14.             user_data_dir=user_data_path,
  15.             channel="msedge",
  16.             headless=False, # 设为 False 方便你观察签到过程
  17.             no_viewport=True,
  18.             args=["--start-maximized"]
  19.         )
  20.         
  21.         page = context.new_page()
  22.         
  23.         try:
  24.             # 3. 直奔签到页面
  25.             page.goto("https://fishc.com.cn/plugin.php?id=k_misign:sign", timeout=60000)
  26.             
  27.             # 4. 智能等待签到按钮(设置等待 10 秒)
  28.             # 鱼C的签到按钮 ID 是 JD_sign
  29.             sign_selector = "#JD_sign"
  30.             page.wait_for_selector(sign_selector, timeout=10000)
  31.             
  32.             # 5. 点击签到
  33.             page.click(sign_selector)
  34.             print("签到成功!")
  35.             
  36.             # 额外动作:等 2 秒看一眼结果再关
  37.             time.sleep(2)
  38.             
  39.         except Exception as e:
  40.             print(f"签到失败或已经签过到了。错误信息:{e}")
  41.         
  42.         finally:
  43.             context.close()

  44. if __name__ == "__main__":
  45.     fishc_sign()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-5 05:46:08 | 显示全部楼层
ling830 发表于 2026-05-05 05:45
可以先杀进程
import os
import time
from playwri ...


你提供的这个改进版本相比之前增加了一步“暴力清场”:在脚本开头用 os.system("taskkill /f /im msedge.exe 2>nul") 强制关闭所有 Edge 进程,解决之前后台 Edge 冲突导致无法启动的问题。这是一个很实用的优化。

下面简单解释这段代码的要点,方便你理解和练习:

---

  • 杀进程指令taskkill /f /im msedge.exe 会强制结束所有名为 msedge.exe 的进程。2>nul 的作用是忽略错误信息(比如没有进程可杀时不会报错),让终端保持干净。
  • 路径设置user_data_path 需要替换成你自己的 Edge 用户数据目录。你可以按照注释提示,在 Edge 地址栏输入 edge://version 查看“配置文件路径”,把其中的路径复制到代码中(注意将 你的用户名 替换为实际用户名)。
  • 启动方式channel="msedge" 让 Playwright 自动定位你安装的 Edge 浏览器,无需手动指定可执行路径,更简洁。
  • 智能等待page.wait_for_selector(sign_selector, timeout=10000) 等待签到按钮出现,超时 10 秒。然后 page.click(sign_selector) 点击签到。
  • 错误处理:如果签到失败(比如已签到或页面加载异常),会被 except 捕获并打印提示,不会让脚本崩溃。


---

运行前请确保已经执行过 pip install playwrightplaywright install edge(安装驱动)。

现在你只要把 你的用户名 替换正确,保存为 qd.py,之后每天开机按 Win + X + I 打开终端,输入 python qd.py 即可一键签到。这个脚本在后台 Edge 未关闭时也能自动清场,非常稳定。

继续加油,你已经掌握了用 Playwright 结合终端实现自动化签到的核心思路!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-6 11:00:09 | 显示全部楼层
小白想问一下老师,file:///C:/Users/duhaijingwork/Desktop/1.png这个就是cmd命令行右键,打开文件地址的那个位置吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-6 11:01:41 | 显示全部楼层
小白想问一下老师,您这篇文章中的第十行“复制到终瑞启动目录”这个就是cmd命令行右键,打开文件地址的那个位置吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-6 17:52:57 | 显示全部楼层
duhaijing 发表于 2026-5-6 11:01
小白想问一下老师,您这篇文章中的第十行“复制到终瑞启动目录”这个就是cmd命令行右键,打开文件地址的那 ...

没错没错,python执行py文件如果不指定绝对路径的话(就是从c盘d盘开始那一大串),默认是用的上下文路径(一般是当前路径)
所以在你说的地方右键cmd或者上边搜索框cmd启动都是去找当前目录的文件
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-5-7 08:31:42 | 显示全部楼层
本帖最后由 ling830 于 2026-5-7 08:33 编辑
duhaijing 发表于 2026-5-6 11:00
小白想问一下老师,这个就是cmd命令行右键,打开文件地址的那个位置吗


你的终端,很可能是打开这个位置,
C:/Users/duhaijingwork/

你打开终端之后,光标跳动的那个文件夹,就是了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-7 10:07:59 | 显示全部楼层
ling830 发表于 2026-5-7 08:31
你的终端,很可能是打开这个位置,
C:/Users/duhaijingwork/

谢谢老师,今天已经处理成功了这个方法的确是很强的呀。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-5-24 18:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表