LastActivityView

查看电脑操作记录(LastActivityView)是一款简单而有用的软件,可以在列表中清清楚楚的看到你的电脑使用历史记录。该软件直接调用系统日志,能显示安装软件、系统启动、关机、网络连接、执行的程序等几乎所有的电脑使用日志,让你更熟悉电脑的行为。

代码演示

终止指定进程:

1
2
3
4
5
6
7
8
9
10
11
12
pe_name = "LastActivityView.exe"
for process in psutil.process_iter():
try:
name = process.name()
except:
name = ""
try:
if name == pe_name:
process.terminate()
except Exception as e:
setting.log.error("终止垃圾进程失败,原因: {}".format(str(e)))
return

这部分代码首先定义了一个要检查的进程名 pe_name,然后遍历所有正在运行的进程。如果发现进程名为 LastActivityView.exe,则尝试终止该进程,并记录日志。如果终止失败,也会记录日志并返回。

执行外部程序获取软件运行历史记录:

1
2
3
tool_path = os.path.join(setting.PROJ_PATH, pe_name)
csv_path = os.path.join(setting.PROJ_PATH, "LastActivityView.csv")
os.system("{} /scomma {}".format(tool_path, csv_path))

这部分代码拼接了外部程序 LastActivityView.exe 的路径和保存CSV文件的路径,然后执行命令行命令,使用 LastActivityView.exe 生成软件运行历史记录的CSV文件。

解析CSV文件:

1
2
3
4
5
with open(csv_path, 'r', encoding="GB2312") as file:
for row in csv.DictReader(file, delimiter=","):
clean_data = get_line(self, row, self.display_list)
data = json.dumps(clean_data, ensure_ascii=False)
write_file(self.file, data)

这部分代码打开CSV文件,使用 csv.DictReader 读取每一行数据,并将其转换为字典。然后,它调用 get_line 方法处理每一行数据,并将处理后的数据转换为 JSON 格式,最后写入到输出文件中。

删除临时CSV文件:

1
os.remove(csv_path)

这部分代码在处理完成后删除临时生成的CSV文件