一个简单的自启动脚本
胖虎

不得不说,人在痛苦的时候,干别的事情的创造力和效率都是极高的

起因

前段时间每天都在电脑前埋头苦干被毕业论文折磨的时候,时间长了发现都形成了一个固有的流程,首先打开一堆软件、网站,也就是弄好工作的一个准备环境,然后才能开始干活。准备工作大致包括:

  • 网页 cnki、谷歌学术、scihub等
  • 文献管理软件 Zotero
  • 翻译软件 copytranslator
  • 自己的论文文件夹,word文件等
  • 其他软件 qq、wechat、onedrive 等
  • 代码软件等

每天都是打开这些,时间长了就想着能不能自动化一下,点一下就都打开那多好,于是就想着创新(摸鱼)一下,于是就有了以下的操作。

自启动脚本动图演示

不得不说,人在痛苦的时候,干别的事情的创造力和效率都是极高的

原理

核心函数就两个

  • 一个是os.startfile(dir)根据电脑的文件路径打开文件,软件、文件夹都可以
  • 另一个是webbrowser.open(url)根据url连接打开指定的网站

根据这两个功能,就可以一键将我常用的界面全部打开

1
2
3
4
5
import os
import webbrowser

os.startfile(dir)
webbrowser.open(url)

写论文场景示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 自动化脚本,根据常用的场景打开软件、网站、文件等
# 场景一:写论文

import os
import webbrowser


def writingPapers():
#打开文件、文件夹、软件
appDirList = []
appDirList.append(r'C:\Users\leiwe\OneDrive\科研\毕业论文') # 文件夹
appDirList.append(r"C:\Users\leiwe\OneDrive\科研\毕业论文\毕业论文汇总.docx")
appDirList.append(r"C:\Program Files (x86)\Zotero\zotero.exe") # zotero
appDirList.append(r'C:\Program Files\copytranslator\copytranslator.exe')
# appDirList.append()

#打开指定网站
urlList = []
urlList.append('https://www.cnki.net/')
urlList.append('http://scholar.scqylaw.com/')
urlList.append('https://sci-hub.se/')
# urlList.append()

for dir in appDirList:
os.startfile(dir)
for url in urlList:
webbrowser.open(url)


if __name__ == "__main__":
writingPapers()

不同场景切换

因为有不同的使用场景需要启动不同的程序组合,需要实现启动时选择场景,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if __name__ == "__main__":
# 存放所有脚本场景
scripList = []
scripList.append([openQQandWechat, "qq 和 微信"])
scripList.append([writingPapers, "写论文"])
scripList.append([steamGame, "steam游戏"])

for i in range(len(scripList)):
print("{} : {}".format(i, scripList[i][1]))

c = int(input("输入序号选择场景:\n"))
message = ""
if c < len(scripList): # 选择单个脚本运行
message = "{} 正在启动".format(scripList[c][1])
scripList[c][0]()
elif c == 99: # 运行所有脚本
message = "运行所有脚本"
for script in scripList:
script[0]()
else: # 输入错误
message = "输入错误"

对以上功能稍加优化后,我目前所用的程序所有代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# 自动化脚本,根据常用的场景打开软件、网站、文件等
# 场景一:写论文

import os
import webbrowser
import time

bufTime = 0.3


def writingPapers():
#打开文件、文件夹、软件
appDirList = []
appDirList.append(r'C:\Users\leiwe\OneDrive\科研\毕业论文') # 文件夹
appDirList.append(r"C:\Program Files (x86)\Zotero\zotero.exe") # zotero
appDirList.append(r'C:\Program Files\copytranslator\copytranslator.exe')
# appDirList.append(r"C:\Users\leiwe\OneDrive\科研\毕业论文\毕业论文汇总.docx")

# appDirList.append()

#打开指定网站
urlList = []
urlList.append('https://www.cnki.net/')
urlList.append('http://scholar.scqylaw.com/')
urlList.append('https://sci-hub.se/')
# urlList.append()

for dir in appDirList:
time.sleep(bufTime)
os.startfile(dir)
for url in urlList:
time.sleep(bufTime)
webbrowser.open(url)


def openQQandWechat():
wecharDir = r"C:\Program Files (x86)\Tencent\WeChat\WeChat.exe"
qqDir = r"C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"
os.startfile(wecharDir)
os.startfile(qqDir)


def steamGame():
steamDir = r"C:\Program Files (x86)\Steam\steam.exe"
uu = r"C:\Program Files (x86)\Netease\UU\uu.exe"
os.startfile(steamDir)
os.startfile(uu)


if __name__ == "__main__":
# 存放所有脚本场景
scripList = []
scripList.append([openQQandWechat, "qq 和 微信"])
scripList.append([writingPapers, "写论文"])
scripList.append([steamGame, "steam游戏"])

# print("输入序号选择场景:\n")
for i in range(len(scripList)):
print("{} : {}".format(i, scripList[i][1]))

c = int(input("输入序号选择场景:\n"))
message = ""
if c < len(scripList): # 选择单个脚本运行
message = "{} 正在启动".format(scripList[c][1])
scripList[c][0]()
elif c == 99: # 运行所有脚本
message = "运行所有脚本"
for script in scripList:
script[0]()
else: # 输入错误
message = "输入错误"

print(message)
print("两秒后窗口将自动关闭......")
time.sleep(3)
# pass

Dawnlauncher

推荐一个好用的软件Dawnlauncher,官网是https://dawnlauncher.com/,挺好用的,常用软件分类在一起,基本是一样的思路只是不用写代码,挺适合我。

界面如下

dawnlauncher截图示例

  • Post title:一个简单的自启动脚本
  • Post author:胖虎
  • Create time:2023-04-07 23:44:55
  • Post link:https://leiwei.space/2023/04/07/尝试用python写脚本/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
 Comments