当前位置:首页>python>我靠这个Python自动化脚本,每天多出2小时摸鱼

我靠这个Python自动化脚本,每天多出2小时摸鱼

  • 2026-09-28 16:26:21
我靠这个Python自动化脚本,每天多出2小时摸鱼

早上九点半打卡,泡上茶,打开电脑,一天的工作从整理表格开始。我盯着屏幕上几百行数据,手动复制粘贴,眼睛快瞎了。旁边老张问我中午吃啥,我说先把活干完。他说他十分钟就搞定,我还不信。

后来我才知道,他用Python写了个脚本。每天花十分钟处理这些重复操作,剩下时间喝茶看行情。我当场让他教我,学完才知道自己以前多傻。今天把这些脚本整理出来,你直接抄作业就行。

一、自动整理Excel报表

每周五下午要交周报,要把五个部门的表格合并成一个总表。以前我得挨个打开,复制,粘贴,调格式,折腾四十分钟。现在这个脚本帮我做完,从打开文件到输出结果,全程不到十秒。

把下面代码保存成 merge_excel.py,放在放表格的文件夹里,双击运行就行。

import pandas as pd 

import glob

files = glob.glob('报表_.xlsx')

dfs = [pd.read_excel(f) for f in files]

result = pd.concat(dfs, ignore_index=True)

result.to_excel('合并周报.xlsx', index=False)

print('搞定了,打开合并周报.xlsx看看')

这代码就干一件事,把当前文件夹里所有以“报表_”开头的Excel读进来,拼在一起,输出新文件。名字自己改,路径也自己调。关键是不用管列名是否一致,它自动按表头对齐。

二、批量改文件名

每个月要归档合同扫描件,文件名都是“扫描件_20240301_001.pdf”这种乱码。领导要求改成“客户名_项目名_日期.pdf”。手动改三十个文件,脑子疼。后来用下面的脚本,把旧名和新名的对应关系写在csv里,运行一次全改完。

import os 

import csv

with open('改名对照.csv', newline='', encoding='utf-8') as f:

   reader = csv.reader(f)

   for old, new in reader:

       if os.path.exists(old):

           os.rename(old, new)

           print(f'{old} -> {new}')

       else:

           print(f'没找到 {old}')

csv里两列,第一列旧文件名,第二列新文件名,不带路径就默认当前文件夹。注意文件名别带特殊符号,Windows下容易出岔子。

三、自动发群消息

每天早上要给三个工作群发同样的通知,以前一个个复制粘贴,还总担心发错群。现在用Python模拟鼠标键盘操作,到点自动打开微信,输入文字,回车发送。代码不多,但得装个pyautogui库。

import pyautogui 

import time

pyautogui.PAUSE = 1

time.sleep(3)

pyautogui.hotkey('ctrl', 'f')

pyautogui.write('工作群一')

time.sleep(1)

pyautogui.press('enter')

time.sleep(1)

pyautogui.write('各位,今天下午3点开会,带好笔记本')

pyautogui.press('enter')

运行之前,微信要开着,电脑别锁屏。第一次用先试运行,把鼠标移动到目标位置看看坐标对不对。这个脚本不完美,偶尔会点错位置,但不影响大局。

四、自动备份文件夹

做设计的同事天天要备份源文件,手动复制粘贴容易漏。我用Python写了个同步脚本,把指定文件夹里的新文件自动复制到移动硬盘里。用到了shutil库,自带的,不用装。

import shutil 

import os

from datetime import datetime

src = r'D:\设计稿'

dst = r'E:\备份\设计稿'

for root, dirs, files in os.walk(src):

   for file in files:

       src_path = os.path.join(root, file)

       rel_path = os.path.relpath(src_path, src)

       dst_path = os.path.join(dst, rel_path)

       os.makedirs(os.path.dirname(dst_path), exist_ok=True)

       shutil.copy2(src_path, dst_path)

print(datetime.now(), '备份完成')

它遍历源文件夹所有子目录和文件,碰到新的就复制过去。已经存在的文件会直接覆盖,所以别把重要文件随便放源目录里。跑一次大概几秒钟。

五、定时提醒喝水

别笑,这个真有用。坐电脑前干活一坐就是三小时,脖子僵硬。我写了个脚本,每隔四十五分钟弹个提醒框,上面写着“起来动动,顺便喝口水”。用的是tkinter,Python自带的窗口库。

import tkinter as tk 

import time

def remind():

   root = tk.Tk()

   root.title('提醒')

   label = tk.Label(root, text='起来动动,喝口水', font=('微软雅黑', 24))

   label.pack(padx=50, pady=30)

   root.after(5000, root.destroy)

   root.mainloop()

while True:

   time.sleep(2700)

   remind()

这个脚本一开就得一直跑着,别关。嫌烦可以把时间改长点,比如改成5400秒,就是90分钟提醒一次。

六、自动整理下载文件夹

下载文件夹里乱七八糟,图片、PDF、压缩包混在一起。我每天下班前运行一次这个脚本,按扩展名分类移动到对应子文件夹。省得周末找文件翻半天。

import os 

import shutil

downloads = r'C:\Users\你的用户名\Downloads'

ext_map = {

   '.jpg': '图片', '.png': '图片',

   '.pdf': 'PDF', '.docx': '文档',

   '.zip': '压缩包', '.exe': '软件'

}

for f in os.listdir(downloads):

   ext = os.path.splitext(f)[1].lower()

   if ext in ext_map:

       folder = os.path.join(downloads, ext_map[ext])

       os.makedirs(folder, exist_ok=True)

       shutil.move(os.path.join(downloads, f), folder)

print('整理完毕')

路径里的“你的用户名”换成自己的,不知道的话打开文件资源管理器看地址栏。这脚本只管移动,不会删任何东西。不放心就先手动建好那几个子文件夹,运行脚本一样有效。

每天摸鱼两小时真不是开玩笑,光那个合并报表就省了我四十分钟。批量改文件名省二十分钟,群消息省十分钟,这些时间凑一起,午休能多睡半小时,下午精神好多了。

写这些脚本不用学很深,会复制粘贴改改路径就能跑。真遇到报错,就把错误信息复制到搜索引擎里,基本都能找到答案。别怕弄坏东西,文件都有备份,最坏就是重来一遍。

你手上肯定也有那种重复到吐的工作,花半小时写个脚本换每天两小时自由,这买卖太划算了。

最新文章

随机文章