亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

嘗試使用“計劃”模塊自動打開程序這可能嗎?(我正在嘗試自動登錄我的會議

嘗試使用“計劃”模塊自動打開程序這可能嗎?(我正在嘗試自動登錄我的會議

PHP
哆啦的時光機 2023-11-09 17:05:46
import schedule import osdef start_file():    os.startfile("C:\python\Zoom.lnk")schedule.every().day.at("09:00").do(start_file())它只是打開我的縮放應用程序,而沒有在適當的時間打開它,并且給了我錯誤: "File "C:\Users\Hate348\PycharmProjects\pythonProject\venv\lib\site-packages\schedule\__init__.py", line 440, in do    self.job_func = functools.partial(job_func, *args, **kwargs)TypeError: the first argument must be callable"
查看完整描述

1 回答

?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

首先,start_file()應該start_file在調用中do():


import schedule

import os


def start_file():

    os.startfile(r"C:\python\Zoom.lnk")


schedule.every().day.at("09:00").do(start_file)

否則,您只調用start_file()一次,并要求調度庫調用該調用的結果值,即None每天 9 點。調用None沒有意義,因此會出現異常。


其次,必須有一個循環才能使計劃的作業實際發生:


import time


...


while True:

    schedule.run_pending()

    time.sleep(1)

否則腳本將停止而不執行任何操作。這是一個非常簡單的庫,沒有任何外部依賴;它不使用操作系統的任務調度程序或類似的東西,因此腳本必須保持運行才能工作。


所以,總共:


import os

import schedule

import time


def start_file():

    os.startfile(r"C:\python\Zoom.lnk")


schedule.every().day.at("09:00").do(start_file)


while True:

    schedule.run_pending()

    time.sleep(1)

如果你不需要任務在 9:00:00 整開始,而是在 9:00 左右開始,你也可以將睡眠時間延長到一分鐘,節省一點 CPU 資源:


while True:

    schedule.run_pending()

    time.sleep(60)

另外,我在字符串r之前添加了"C:\python\Zoom.lnk"。并不是因為它在這個特定示例中不起作用(它確實起作用),而是通常,如果沒有r, 則將\成為字符串中的轉義字符,而在 之后使用其他字符\(例如 )n,您將得到不需要的結果。對于r,\字符按字面意思處理,絕不作為轉義字符。這就是您想要的文件名中的反斜杠,尤其是在 Windows 上。


查看完整回答
反對 回復 2023-11-09
  • 1 回答
  • 0 關注
  • 169 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號