10个Python自动化脚本,让日常任务轻松便捷!

Python 以其简单易学的语法和强大的库支持,使得它成为实现自动化任务的理想语言.无论是个人日常工作,还是企业的流程优化,Python 都可以通过自动化脚本帮助节省时间、提升效率.以下是10个令人不可思议的 Python 自动化脚本,涵盖了从文件管理、网络爬虫到数据处理的各个领域.

1. 文件自动整理脚本

日常工作中,我们经常会面对文件混乱的问题.此脚本可以自动根据文件类型将文件归类到对应的文件夹中.

import os
import shutil

def organize_files(directory):
    # 获取目录中的所有文件
    for filename in os.listdir(directory):
        file_path = os.path.join(directory, filename)
        
        # 跳过目录
        if os.path.isdir(file_path):
            continue
        
        # 按文件扩展名分类
        file_ext = filename.split('.')[-1]
        ext_dir = os.path.join(directory, file_ext.upper())
        
        # 如果分类目录不存在,则创建
        if not os.path.exists(ext_dir):
            os.makedirs(ext_dir)
        
        # 移动文件到分类目录中
        shutil.move(file_path, ext_dir)

# 调用函数,将指定目录进行整理
organize_files('/path/to/your/directory')

这个脚本将按文件类型(扩展名)自动整理目录中的文件.

2. 自动发送邮件脚本

此脚本可以通过 SMTP 自动发送邮件,适合用于批量通知、营销邮件等场景.

import smtplib
from email.mime.text import MIMEText

def send_email(sender, password, recipient, subject, message):
    # 设置邮件内容
    msg = MIMEText(message, 'plain', 'utf-8')
    msg['From'] = sender
    msg['To'] = recipient
    msg['Subject'] = subject
    
    # 连接 SMTP 服务器并发送邮件
    with smtplib.SMTP_SSL("smtp.gmail.com", 465) as server:
        server.login(sender, password)
        server.sendmail(sender, recipient, msg.as_string())

# 使用脚本发送邮件
send_email("your_email@gmail.com", "your_password", "recipient@example.com", "自动化邮件", "这是通过Python发送的自动化邮件.")

通过这个脚本,可以自动化发送带有自定义内容的邮件.

3. 自动备份文件脚本

将重要的文件自动压缩备份到指定目录,防止文件丢失.

import os
import zipfile
import datetime

def backup_files(source_dir, backup_dir):
    # 获取当前日期作为备份文件名的一部分
    current_date = datetime.datetime.now().strftime("%Y%m%d")
    zip_filename = os.path.join(backup_dir, f"backup_{current_date}.zip")
    
    # 创建压缩文件
    with zipfile.ZipFile(zip_filename, 'w') as backup_zip:
        for foldername, subfolders, filenames in os.walk(source_dir):
            for filename in filenames:
                file_path = os.path.join(foldername, filename)
                backup_zip.write(file_path, os.path.relpath(file_path, source_dir))
    
    print(f"备份完成:{zip_filename}")

# 调用函数,备份指定目录
backup_files('/path/to/source', '/path/to/backup')

此脚本会将指定目录的所有文件压缩成一个备份文件.

4. 自动登录并填写表单的脚本

结合 Selenium 库,可以自动登录网站并填写表单,例如自动签到、自动报名等.

from selenium import webdriver
from selenium.webdriver.common.by import By

def auto_login_and_fill_form(url, username, password):
    # 设置Chrome驱动路径
    driver = webdriver.Chrome(executable_path='/path/to/chromedriver')
    driver.get(url)
    
    # 自动登录
    driver.find_element(By.NAME, 'username').send_keys(username)
    driver.find_element(By.NAME, 'password').send_keys(password)
    driver.find_element(By.ID, 'login_button').click()
    
    # 填写表单(假设有表单)
    driver.find_element(By.NAME, 'form_field').send_keys("自动填写内容")
    driver.find_element(By.ID, 'submit_button').click()

    driver.quit()

# 使用脚本自动登录并填写表单
auto_login_and_fill_form('https://example.com/login', 'your_username', 'your_password')

此脚本自动化登录网站并填写表单,适合用于重复性操作.

5. 自动天气预报通知脚本

通过API获取天气预报,并自动发送通知到手机或邮箱.

import requests

def get_weather(api_key, city):
    url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}&units=metric'
    response = requests.get(url)
    weather_data = response.json()
    return weather_data['main']['temp'], weather_data['weather'][0]['description']

# 使用脚本获取并打印天气信息
temp, description = get_weather('your_api_key', 'Beijing')
print(f"北京当前温度: {temp}°C, 天气状况: {description}")

该脚本通过调用开放的天气API获取实时天气信息,并可以拓展为自动发送天气预报通知.

6. 自动化Excel数据处理脚本

使用 pandas 库快速处理Excel数据,例如生成报表或数据分析.

import pandas as pd

def process_excel(file_path):
    # 读取Excel文件
    df = pd.read_excel(file_path)
    
    # 数据处理,例如计算列总和
    df['Total'] = df.sum(axis=1)
    
    # 保存处理后的数据
    df.to_excel('processed_data.xlsx', index=False)

# 调用函数处理Excel文件
process_excel('/path/to/excel/file.xlsx')

此脚本自动读取Excel文件,处理数据后生成新的Excel文件.

7. 定时自动化任务脚本

此脚本使用 schedule 库,在指定时间自动执行任务.

import schedule
import time

def job():
    print("执行定时任务...")

# 每天上午10点执行任务
schedule.every().day.at("10:00").do(job)

while True:
    schedule.run_pending()
    time.sleep(60)

该脚本可以自动在指定时间执行任务,例如每天定时运行一次备份或发送报告.

8. 自动生成PDF报告的脚本

使用 Fpdf 库生成包含文本和图像的PDF报告.

from fpdf import FPDF

def create_pdf_report(filename, title, content):
    pdf = FPDF()
    pdf.add_page()
    
    pdf.set_font("Arial", 'B', 16)
    pdf.cell(200, 10, title, ln=True, align='C')
    
    pdf.set_font("Arial", '', 12)
    pdf.multi_cell(0, 10, content)
    
    pdf.output(filename)

# 使用脚本生成PDF报告
create_pdf_report('report.pdf', '自动化PDF报告', '这是一个自动生成的PDF报告内容.')

此脚本可以自动生成PDF报告,适合用于生成报表、文档等.

9. 网络爬虫自动抓取信息脚本

通过 BeautifulSoup 库自动抓取网页中的信息,如新闻、商品信息等.

import requests
from bs4 import BeautifulSoup

def scrape_news(url):
    response = requests.get(url)
    soup = BeautifulSoup(response.text, 'html.parser')
    
    # 抓取所有新闻标题
    for title in soup.find_all('h2'):
        print(title.get_text())

# 使用脚本抓取新闻标题
scrape_news('https://example.com/news')

此脚本自动从网页中提取指定内容,适合用于定期抓取最新信息.

10. 自动化社交媒体发布脚本

通过API自动发布消息到社交媒体平台,例如Twitter或微信.

import tweepy

def tweet(message, api_key, api_secret_key, access_token, access_token_secret):
    # 使用tweepy进行认证
    auth = tweepy.OAuthHandler(api_key, api_secret_key)
    auth.set_access_token(access_token, access_token_secret)
    api = tweepy.API(auth)
    
    # 发布推文
    api.update_status(message)

# 使用脚本发布推文
tweet("这是一个自动发布的推文!", "your_api_key", "your_api_secret", "your_access_token", "your_access_token_secret")

此脚本可以自动化发布社交媒体内容,节省了手动登录发布的时间.

结语

Python 的强大之处在于它的灵活性和广泛的第三方库支持.通过这些自动化脚本,可以大幅提高日常任务的效率,让繁琐的操作变得简单快捷.

原创文章不易,求点赞、在看、转发或留言,这样对我创作下一个精美文章会有莫大的动力!

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

点击领取 100%免费

👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

在这里插入图片描述

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末
👉Python70个实战练手案例&源码👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉Python大厂面试资料👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

👉Python副业兼职路线&方法👈

学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取保证100%免费

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/711c5966aa7348dc9340894eea54e99f.png#pic_center在这里插入图片描述

微信腾讯文档志愿者报名通常不会直接提供填写脚本,因为这是一个在线申请流程,可能涉及到网页表单填写。然而,如果你需要编写一个自动化工具来辅助这个过程,你可以考虑使用Python自动化库,如Selenium或BeautifulSoup,来进行模拟操作。以下是一个简单的步骤概述: 1. 安装必要的库: ``` pip install selenium beautifulsoup4 webdriver_manager ``` 2. 创建一个ChromeDriver实例,如果尚未下载,请先安装对应版本的浏览器驱动程序。 3. 编写Python脚本,如下所示(假设页面URL是`https://docs.qq.com/volunteer/apply`): ```python from selenium import webdriver from bs4 import BeautifulSoup # 初始化浏览器 driver = webdriver.Chrome(executable_path='path/to/chromedriver') # 访问报名页面 driver.get('https://docs.qq.com/volunteer/apply') # 查找并填充表单字段 name_field = driver.find_element_by_name('name') email_field = driver.find_element_by_name('email') phone_field = driver.find_element_by_name('phone') name_field.send_keys('Your Name') email_field.send_keys('your_email@example.com') phone_field.send_keys('1234567890') # 提交按钮可能是class名、id名或者其他标识,找到后点击 submit_button = driver.find_element_by_class_name('submit-btn') or driver.find_element_by_id('submit-id') submit_button.click() # 等待页面加载完成 driver.implicitly_wait(5) # 可能需要调整等待时间 # 关闭浏览器窗口 driver.quit() ``` 记得替换上述代码中的`'path/to/chromedriver'`为你实际的ChromeDriver路径,并根据实际情况修改表单元素查找的方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值