算法金 | 12 个最佳 Python 代码片段,帮我完成工作自动化,香~

​大侠幸会幸会,我是日更万日 算法金;0 基础跨行转算法,国内外多个算法比赛 Top;放弃 BAT Offer,成功上岸 AI 研究院 Leader;

Python是一种多功能的编程语言,它提供了各种功能和库来有效地自动化任务。

在这篇文章中,我们将探索12个高级Python代码片段,可以自动化酷炫且有用的任务,帮助节省宝贵的时间和精力。

这些代码片段将使您能够无缝完成任务,从自动化发送带附件的电子邮件到检索Wi-Fi密码、下载油管视频等等。

让我们一起深入了解使用Python进行自动化!上篇 1-6

发送带附件的电子邮件

import smtplib, ssl
from email import encoders
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
​
# 发送方的邮箱地址
sender_email = 'your_email@gmail.com'
​
# 发送方的邮箱密码(请确保安全性,避免泄露)
email_password = 'your_password'
​
# 接收方的邮箱地址
recipient_email = 'recipient@gmail.com'
​
# 邮件正文内容
email_content = "这是一封通过Python发送的测试邮件"
​
# 创建一个MIMEMultipart类的实例
email_message = MIMEMultipart()
email_message["From"] = sender_email
email_message["To"] = recipient_email
email_message["Subject"] = "自动化Python邮件"
email_message["Bcc"] = recipient_email  # 隐秘抄送
​
# 将邮件正文内容附加到邮件中
email_message.attach(MIMEText(email_content, "plain"))
​
# 指定要发送的附件文件名
attachment_filename = "document.xlsx"
​
# 打开附件文件,准备发送
with open(attachment_filename, "rb") as file_to_attach:file_part = MIMEBase("application", "octet-stream")file_part.set_payload(file_to_attach.read())
​
# 对附件进行base64编码
encoders.encode_base64(file_part)
​
# 输出提示信息,表明邮件已发送
​
print("邮件发送成功!")

将PDF转换为图像

要将PDF文件的每一页转换为单独的图像文件,我们可以使用Python的PyMuPDF(fitz)库来实现。

这个库提供了简便的方法来处理PDF文件和图像转换。下面是实现这个功能的代码

import fitz  # 引入PyMuPDF库
​
# PDF文件路径
pdf_path = "sample.pdf"
# 打开PDF文件
doc = fitz.open(pdf_path)
​
# 遍历PDF中的每一页
for page_number in range(len(doc)):page = doc.load_page(page_number)  # 加载当前页pix = page.get_pixmap()  # 将当前页转换为像素图像output_image = f"output_page_{page_number}.png"  # 输出图像的文件名pix.save(output_image)  # 保存图像文件
​
# 关闭PDF文档
doc.close()
print("PDF转换完成!")

这段代码将PDF文件的每一页转换为PNG格式的图像文件。

代码首先导入必要的库,然后打开指定的PDF文件。

接着,它遍历PDF中的每一页,将每页转换为像素图像,并将其保存为PNG格式的文件。

最后,代码关闭PDF文档并打印完成信息。

将文本转化为艺术字

这个小项目不仅简单易用,而且能够为你的文本添加一抹亮色。

无论是制作有趣的社交媒体状态、个性化的电子邮件签名,还是给日常的记录添加一点创意,这个工具都是一个完美的选择。

想一下,当你的朋友或同事看到这些独特的艺术字体时的惊喜表情,这将是一次愉快的交流体验。

通过这种简单的创意,你的文字将变得生动有趣,让阅读变得更加享受。

from art import text2art, tprint, art
​
# 将"Hello"转化为艺术字体
print(text2art("Hello"))
# 以块状字体打印"Python",忽略无法识别的字符
tprint("Python", font="block", chr_ignore=True)
# 打印一个咖啡杯的艺术图案
print(art("coffee"))

注意事项:

在使用这些代码之前,确保你已经安装了art库。如果没有安装,可以使用命令pip install art来安装。

这段代码在大多数Python环境中都可以运行,无需特别的配置。

你可以尝试修改文本内容或字体风格,探索更多的艺术字样式。

获取文件大小

这个小项目能够帮助你快速了解任何文件的大小。

想象你正在清理电脑,需要决定哪些文件是重要的,哪些可以删除。

这时,知道文件的具体大小可以帮助你做出更明智的决策。它不仅适用于日常的文件管理,也适用于专业的数据分析工作。

通过这个简单的工具,你可以轻松掌握文件的大小信息,使得数据管理变得更加高效和有序。

import os
​
# 指定需要检查大小的文件路径
target_file = "document.xlsx"
# 使用os模块获取文件状态信息
file_status = os.stat(target_file)
# 从文件状态信息中提取文件大小
file_size = file_status.st_size
# 打印文件大小,单位是字节
print(f"文件大小为:{file_size} 字节")

注意事项:

  1. 确保文件路径正确,否则代码会抛出异常。
  2. 这段代码可以应用于任何类型的文件,不仅限于Excel文件。
  3. 如果你是编程新手,可以尝试修改文件路径,观察不同文件的大小。

描述:

获取Wi-Fi密码

这个小项目可以帮助你快速找回保存在计算机上的Wi-Fi密码。

这在你忘记密码但需要连接到之前使用过的网络时非常有用。

它也可以作为理解计算机网络配置和命令行操作的一个实用案例。

通过这个工具,你可以轻松管理和恢复你的网络连接,无需担心因忘记密码而无法上网。

这个工具的简洁性和实用性,让网络管理变得更加轻松和高效。

import subprocess
​
# 获取计算机上所有Wi-Fi配置文件的名称
wifi_profiles_data = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles']).decode('utf-8').split('\n')
wifi_profiles = [line.split(":")[1][1:-1] for line in wifi_profiles_data if "所有用户配置文件" in line]
​
# 遍历每个Wi-Fi配置文件
for profile in wifi_profiles:# 获取包含密码的Wi-Fi配置详情wifi_details = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', profile, 'key=clear']).decode('utf-8').split('\n')# 在配置详情中查找密码password_data = [line.split(":")[1][1:-1] for line in wifi_details if "关键内容" in line]# 打印Wi-Fi名称及其密码print(f"Wi-Fi名称: {profile}, 密码: {password_data[0]}")

运行这段代码需要管理员权限,因为它涉及到系统级的网络配置。

代码只能在Windows操作系统上运行,因为它使用了netsh命令。

请确保合法使用这段代码,只在你有权访问的网络上使用,不要用于非法目的。

缩短URL

这个小项目可以帮你将冗长的网址转换成简洁、易于分享的形式。

在日常生活中,我们经常遇到需要分享链接的场景,特别是当链接非常长且难以记忆时。

使用这个工具,你可以轻松将这些长链接转换成简短版本,无论是在社交媒体上分享,还是在印刷品上打印二维码,都会变得更加方便。

这个工具的实用性和便捷性,让链接分享变得更加高效和优雅。

from pyshorteners import Shortener
​
# 待缩短的长URL
original_url = "https://zaixiaoxiaodehuaylimianwayawayawa.com/"
# 创建一个Shortener对象
url_shortener = Shortener()
# 使用TinyURL服务进行URL缩短
compressed_url = url_shortener.tinyurl.short(original_url)
​
# 打印缩短后的URL
print("原始URL:", original_url)
print("缩短后的URL:", compressed_url)

在使用这段代码之前,请确保已经安装了pyshorteners库。

如果没有安装,可以使用命令pip install pyshorteners来安装。

注意URL缩短服务可能会有使用限制,例如访问频率的限制。

此代码适用于任何支持Python的操作系统。

星辰大海,江湖再会,溜了溜了~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3224536.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

更深入了解汽车与航空电子等安全关键型应用的IP核考量因素

作者:Philipp Jacobsohn,SmartDV高级应用工程师 中国已经连续十多年成为全球第一大汽车产销国,智能化也成为了汽车行业发展的一个重要方向,同时越来越多的制造商正在考虑进入无人机和飞行汽车等低空设备,而所有的这些…

语义言语流畅性的功能连接和有效连接

摘要 语义言语流畅性(SVF)受损在多种神经系统疾病中都存在。虽然已经报道了SVF相关区域的激活情况,但这些区域如何相互连接以及它们在脑网络中的功能作用仍存在分歧。本研究使用功能磁共振成像评估了健康被试SVF静态和动态功能连接(FC)以及有效连接。观察到额下回(…

Filter 过滤器

1. 什么是过滤器 拦截不符合过滤要求的请求,使其无法到达目的地。 执行过程 主要用在:统一认证,统一编码设置 2. 创建过滤器 两种方式:与 servlet 雷同 ① 注解方式 (/* 拦截所有请求) WebFilter(fil…

从数据仓库到数据湖(下):热门的数据湖开源框架

文章目录 一、前言二、Delta Lake三、Apache Hudi四、Apache Iceberg五、Apache Paimon六、对比七、笔者观点八、总结八、参考资料 一、前言 在上一篇从数据仓库到数据湖(上):数据湖导论文章中,我们简单讲述了数据湖的起源、使用原因及其本质。本篇文章…

【Windows11】Edge卡顿问题精准解决

目录 背景问题解决 背景 本机配置: CPU:i5-13600KF 内存:威刚 XPG龙耀 D300G 32G 6400 D5 固态:威刚 XPG翼龙 S70B 1T PCIe4.0 7400MB/s 带缓存 理论上这个配置多开个Edge轻轻松松。 已经尝试网上各种方法未果,包括不…

【状态估计】非线性非高斯系统的状态估计——离散时间的批量估计

上一篇文章介绍了离散时间的递归估计,本文着重介绍离散时间的批量估计。 上一篇位置:【状态估计】非线性非高斯系统的状态估计——离散时间的递归估计。 离散时间的批量估计问题 最大后验估计 目标函数 利用高斯-牛顿法来解决估计问题的非线性版本&a…

Qt/QML学习-ListView

QML学习 ListView例程视频讲解代码 main.qml import QtQuick 2.15 import QtQuick.Window 2.15 import QtQuick.Controls 2.15Window {id: windowwidth: 640height: 480visible: truetitle: qsTr("ListView")Rectangle {height: listView.heightwidth: listView.wi…

文件操作和IO流(Java版)

前言 我们无时无刻不在操作文件。可以说,我们在电脑上能看到的图片、视频、音频、文档都是一个又一个的文件,我们需要从文件中读取我们需要的数据,将数据运算后也需要将结果写入文件中长期保存。可见文件的重要性,今天我们就来简…

262个地级市-市场潜力指数(do文件+原始文件)

全国262个地级市-市场潜力指数(市场潜力计算方法代码数据)_市场潜力数据分析资源-CSDN文库 市场潜力指数:洞察未来发展的指南针 市场潜力指数是一个综合性的评估工具,它通过深入分析市场需求、竞争环境、政策支持和技术创新等多个…

2025考研~数据结构试卷

作者主页:知孤云出岫 数据结构试题 [TOC](数据结构试题)数据结构试卷一、选择题(每题2分,共20分)二、填空题(每题3分,共15分)三、简答题(每题10分,共40分)四…

rsync远程同步--累了,明天继续再写~。

rsync官网链接 rsync(Remote Sync,远程同步)开源快速备份工具,是一个用于本地和远程文件同步的Unix-like命令行程序。它使用“快速数据传输算法”,只发送源和目标之间的差异,因此数据传输非常高效。 可以在不同主机之间镜像同步整 个目录树…

图论---哈密顿回路的实现

开始编程前分析设计思路和程序的整体的框架,以及作为数学问题的性质: 设计思路: 利用邻接表存储图的结构,存储对应顶点和边作为无向图存边时正反都进行存储便于寻找路径对顶点的访问和路径走向进行记录使用回溯法+深度…

这不是在搞技术,而是在玩心态~

正文 大家好,我是bug菌~ 如今为制造业提供大型设备的研发型公司大多数都是做系统集成,一部分有技术实力的公司会把核心部分自研,其他相对比较通用的周边设备由其他公司产品来集成;也有一部分公司只是做做方案和资源整合&#xff0…

SSE 和 WebSocket 的区别与选择指南

在构建现代网络应用时,实时通信技术扮演着至关重要的角色。本文将深入讨论 Server-Sent Events (SSE) 和 WebSocket ——两种主要的实时通信技术,对比它们的实现方式、优势和具体用途,以帮助开发人员根据自身项目需求选择合适的技术。 何为 …

常用的设计模式和使用案例汇总

常用的设计模式和使用案例汇总 【一】常用的设计模式介绍【1】设计模式分类【2】软件设计七大原则(OOP原则) 【二】单例模式【1】介绍【2】饿汉式单例【3】懒汉式单例【4】静态内部类单例【5】枚举(懒汉式) 【三】工厂方法模式【1】简单工厂模式&#xf…

PostgreSQL 中如何实现数据的增量更新和全量更新的平衡?

文章目录 一、增量更新与全量更新的概念增量更新全量更新 二、考虑的因素1. 数据量2. 数据更改的频率和规模3. 数据一致性要求4. 系统性能和资源利用5. 业务逻辑和流程 三、解决方案(一)混合使用增量更新和全量更新(二)使用临时表…

未羽研发测试管理平台

突然有一些觉悟,程序猿不能只会吭哧吭哧的低头做事,应该学会怎么去展示自己,怎么去宣传自己,怎么把自己想做的事表述清楚。 于是,这两天一直在整理自己的作品,也为接下来的找工作多做点准备。接下来…

Python学习中使用循环(for, while)

在Python编程语言中,循环是一个非常重要的概念,可以帮助我们在代码中重复执行某些操作。Python支持两种主要的循环结构:for 循环和 while 循环。 1. for 循环 for 循环用于遍历一个序列(如列表、元组、字符串)或其他…

南方科技大学马永胜教授给年轻人使用AI工具上的建议

摘要 - 1. AI的未来,是机器人和机器人之间的合作; 2. 行业的发展方向是需求决定的,不要做同质化的发展,要做专/精/特/新; 3. 新质生产力 ( 科学技术革命性突破 生产要素创新型配置 产业深度转型升级&…

《植物大战僵尸杂交版》2.2版本:全新内容与下载指南

《植物大战僵尸杂交版》2.2版本已经火热更新,带来了一系列令人兴奋的新玩法和调整,为这款经典的塔防游戏注入了新的活力。如果你是《植物大战僵尸》系列的忠实粉丝,那么这个版本绝对值得你一探究竟。 2.2版本更新亮点 新增看星星玩法 这个新…