10个拿来即用的Python自动化脚本
2023-12-28 13:30:57
更多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
干货笔记整理
最经典的编程教材《Think Python》开源中文版.PDF下载
点击“阅读原文”,获取更多学习内容
文章来源:https://blog.csdn.net/wuShiJingZuo/article/details/135258736
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!