10个拿来即用的Python自动化脚本

2023-12-28 13:30:57

eaf3cf73253231f42b7f0fcf543f31f8.jpeg

更多Python学习内容:ipengtao.com

当涉及到自动化任务时,Python是一个非常强大的工具,它提供了丰富的库和模块,可以帮助你自动化各种常见的任务。在本文中,将介绍10个拿来即用的Python自动化脚本示例,这些示例覆盖了不同领域的自动化任务,并提供了详细的示例代码,以帮助大家更好地理解和应用这些脚本。

文件批量重命名脚本

这个脚本可以批量重命名文件,例如将一组图片文件按照一定规则重命名。

import?os

def?batch_rename_files(directory,?prefix):
????for?index,?filename?in?enumerate(os.listdir(directory)):
????????new_filename?=?f"{prefix}_{index+1}.jpg"
????????os.rename(os.path.join(directory,?filename),?os.path.join(directory,?new_filename))

if?__name__?==?"__main__":
????batch_rename_files("path/to/directory",?"image")

网页内容抓取脚本

使用这个脚本,可以从网页上抓取信息并保存到本地文件中,例如抓取新闻文章内容。

import?requests

def?fetch_web_content(url):
????response?=?requests.get(url)
????if?response.status_code?==?200:
????????with?open("web_content.html",?"w",?encoding="utf-8")?as?file:
????????????file.write(response.text)

if?__name__?==?"__main__":
????fetch_web_content("https://example.com")

自动发送邮件脚本

这个脚本可以自动发送电子邮件,例如发送通知或报告。

import?smtplib
from?email.mime.text?import?MIMEText

def?send_email(subject,?message,?to_email):
????smtp_server?=?"smtp.example.com"
????smtp_port?=?587
????smtp_username?=?"your_username"
????smtp_password?=?"your_password"

????msg?=?MIMEText(message)
????msg["Subject"]?=?subject
????msg["From"]?=?smtp_username
????msg["To"]?=?to_email

????server?=?smtplib.SMTP(smtp_server,?smtp_port)
????server.starttls()
????server.login(smtp_username,?smtp_password)
????server.sendmail(smtp_username,?to_email,?msg.as_string())
????server.quit()

if?__name__?==?"__main__":
????send_email("Hello",?"This?is?an?automated?email.",?"recipient@example.com")

数据备份脚本

这个脚本可以定期备份重要数据,例如数据库或文件夹。

import?shutil
import?datetime

def?backup_data(source_directory,?backup_directory):
????timestamp?=?datetime.datetime.now().strftime("%Y%m%d%H%M%S")
????backup_folder?=?f"backup_{timestamp}"
????backup_path?=?os.path.join(backup_directory,?backup_folder)

????shutil.copytree(source_directory,?backup_path)

if?__name__?==?"__main__":
????backup_data("path/to/source_directory",?"path/to/backup_directory")

日志分析脚本

这个脚本可以分析日志文件,提取有用的信息或统计数据。

def?analyze_logs(log_file):
????with?open(log_file,?"r")?as?file:
????????log_data?=?file.readlines()
????
????#?进行日志分析和处理
????#?...

if?__name__?==?"__main__":
????analyze_logs("path/to/log_file.txt")

数据自动化处理脚本

这个脚本可以自动化处理数据,例如将数据从一个格式转换为另一个格式。

import?csv

def?process_data(input_file,?output_file):
????with?open(input_file,?"r")?as?input_csv,?open(output_file,?"w")?as?output_csv:
????????reader?=?csv.reader(input_csv)
????????writer?=?csv.writer(output_csv)
????????
????????for?row?in?reader:
????????????#?进行数据处理
????????????#?...
????????????writer.writerow(processed_row)

if?__name__?==?"__main__":
????process_data("input_data.csv",?"output_data.csv")

图片处理脚本

这个脚本可以自动化处理图片,例如调整大小、添加水印等。

from?PIL?import?Image

def?process_images(input_folder,?output_folder):
????for?filename?in?os.listdir(input_folder):
????????image?=?Image.open(os.path.join(input_folder,?filename))
????????#?进行图片处理
????????#?...
????????image.save(os.path.join(output_folder,?filename))

if?__name__?==?"__main__":
????process_images("input_images",?"output_images")

自动化测试脚本

这个脚本可以自动运行测试用例并生成测试报告。

import?unittest
from?HTMLTestRunner?import?HTMLTestRunner

class?MyTestCase(unittest.TestCase):
????def?test_example(self):
????????self.assertEqual(1?+?1,?2)

if?__name__?==?"__main__":
????suite?=?unittest.TestLoader().loadTestsFromTestCase(MyTestCase)
????with?open("test_report.html",?"w")?as?report_file:
????????runner?=?HTMLTestRunner(stream=report_file)
????????runner.run(suite)

自动化网站测试脚本

这个脚本可以自动化进行网站测试,例如模拟用户操作。

from?selenium?import?webdriver

def?automate_website_test():
????driver?=?webdriver.Chrome()
????driver.get("https://example.com")
????
????#?进行自动化测试操作
????#?...

????driver.quit()

if?__name__?==?"__main__":
????automate_website_test()

自动化文档生成脚本

这个脚本可以自动生成文档,例如从代码注释或数据中提取信息。

def?generate_documentation(source_code_directory,?output_file):
????#?从源代码中提取文档信息
????#?...

????with?open(output_file,?"w")?as?doc_file:
????????doc_file.write(documentation_content)

if?__name__?==?"__main__":
????generate_documentation("source_code",?"documentation.md")

以上是10个实用的Python自动化脚本示例,它们可以帮助你简化各种任务并提高工作效率。根据需求,可以选择其中一个或多个示例进行学习和定制,以满足特定的自动化需求。

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

更多Python学习内容:ipengtao.com

干货笔记整理

? 100个爬虫常见问题.pdf ,太全了!

Python 自动化运维 100个常见问题.pdf

Python Web 开发常见的100个问题.pdf

124个Python案例,完整源代码!

PYTHON 3.10中文版官方文档

耗时三个月整理的《Python之路2.0.pdf》开放下载

最经典的编程教材《Think Python》开源中文版.PDF下载

6b71ae0568beb91f705fb1787e13f673.png

点击“阅读原文”,获取更多学习内容

文章来源:https://blog.csdn.net/wuShiJingZuo/article/details/135258736
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。