python编写的自动化脚本能够很好的执行,python自动化脚本要用什么模块
本文主要介绍五个方便易用的Python自动化脚本的分享。这次我们用Python实现几个自动化场景,可能会用到你的工作中,或者对你的学习有帮助。有需要的朋友可以参考一下。
00-1010 1、自动阅读网页新闻2、自动生成草图3、自动发送多封邮件4、自动数据探索5、自动桌面提示前言:
相对于自动化生产线、自动化办公等字眼,机器可以在没有人工干预的情况下,自行完成各种任务,大大提高了工作效率。
在编程世界中有各种各样的自动化脚本来完成不同的任务。Python特别适合写自动化脚本,因为它的语法简洁易懂,还有丰富的第三方工具库。这次我们用Python实现了几个自动化场景,可能会用到你的工作中。
目录
这个脚本可以从网页上抓取文字,然后自动朗读,当你想听新闻的时候是个不错的选择。
代码分为两部分,第一部分是通过爬虫抓取网页文本,第二部分是通过阅读工具朗读文本。
需要的第三方库:
一个经典的HTML/XML文本解析器,用来提取被抓取的网页的信息。
requests——一个易于使用的HTTP工具,用于向网页发送请求以获取数据。
pyttsx 3-转换文本为语音,并控制速度,频率和语音。
导入pyttsx3
导入请求
从bs4导入BeautifulSoup
engine=pyttsx3.init(sapi5 )
voices=engine . getproperty( voices )
newVoiceRate=130 ##降低语音速率
engine.setProperty(rate ,newVoiceRate)
engine.setProperty(voice ,voices[1])。id)
def扬声器(音频):
engine.say(音频)
engine.runAndWait()
text=str(input(粘贴文章\n ))
res=requests.get(文本)
soup=BeautifulSoup(res.text, html.parser )
文章=[]
对于范围内的I(len(soup . select(。p))):
article=soup.select(。p )[我]。getText()。条状()
articles.append(文章)
文本=“”。加入(文章)
朗读(文本)
# engine.save_to_file(text, test.mp3) ##如果您想将语音保存为音频文件
engine.runAndWait()
1、自动化阅读网页新闻
这个脚本可以将彩色图片转换成铅笔素描,对于人像和风景都有很好的效果。
而且只需要一键生成几行代码,适合批量操作,非常快。
需要的第三方库:
opencv-计算机视觉工具,可以实现多样化的图像和视频处理,具有Python接口。
使用Python绘制照片草图
导入cv2
img=cv2.imread(elon.jpg )
##图像到灰度图像
gray_image=cv2.cvtColor(img,cv2。COLOR_BGR2GRAY)
##灰度图像到反转灰度图像
反转_灰度_图像=255-灰度_图像
##模糊反转的灰色图像
模糊_反转_灰色_图像=cv2。Gaussian blur(inverted _ gray _ image,(19,19),0)
##反转模糊的即时消息
age
inverted_blurred_image = 255-blurred_inverted_gray_image
### Preparing Photo sketching
sketck = cv2.divide(gray_image, inverted_blurred_image,scale= 256.0)
cv2.imshow("Original Image",img)
cv2.imshow("Pencil Sketch", sketck)
cv2.waitKey(0)
3、自动发送多封邮件
这个脚本可以帮助我们批量定时发送邮件,邮件内容、附件也可以自定义调整,非常的实用。
相比较邮件客户端,Python脚本的优点在于可以智能、批量、高定制化地部署邮件服务。
需要的第三方库:
Email - 用于管理电子邮件消息
Smtlib - 向SMTP服务器发送电子邮件,它定义了一个 SMTP 客户端会话对象,该对象可将邮件发送到互联网上任何带有 SMTP 或 ESMTP 监听程序的计算机
Pandas - 用于数据分析清洗地工具
import smtplibfrom email.message import EmailMessage
import pandas as pd
def send_email(remail, rsubject, rcontent):
email = EmailMessage() ## Creating a object for EmailMessage
email[from] = The Pythoneer Here ## Person who is sending
email[to] = remail ## Whom we are sending
email[subject] = rsubject ## Subject of email
email.set_content(rcontent) ## content of email
with smtplib.SMTP(host=smtp.gmail.com,port=587)as smtp:
smtp.ehlo() ## server object
smtp.starttls() ## used to send data between server and client
smtp.login("deltadelta371@gmail.com","delta@371") ## login id and password of gmail
smtp.send_message(email) ## Sending email
print("email send to ",remail) ## Printing success message
if __name__ == __main__:
df = pd.read_excel(list.xlsx)
length = len(df)+1
for index, item in df.iterrows():
email = item[0]
subject = item[1]
content = item[2]
send_email(email,subject,content)
4、自动化数据探索
数据探索是数据科学项目的第一步,你需要了解数据的基本信息才能进一步分析更深的价值。
一般我们会用pandas
、matplotlib
等工具来探索数据,但需要自己编写大量代码,如果想提高效率,Dtale是个不错的选择。
Dtale特点是用一行代码生成自动化分析报告,它结合了Flask
后端和React前端,为我们提供了一种查看和分析Pandas数据结构的简便方法。
我们可以在Jupyter上实用Dtale。
需要的第三方库:
Dtale - 自动生成分析报告
### Importing Seaborn Library For Some Datasetsimport seaborn as sns
### Printing Inbuilt Datasets of Seaborn Library
print(sns.get_dataset_names())
### Loading Titanic Dataset
df=sns.load_dataset(titanic)
### Importing The Library
import dtale
#### Generating Quick Summary
dtale.show(df)
5、自动桌面提示
这个脚本会自动触发windows
桌面通知,提示重要事项,比如说:您已工作两小时,该休息了
我们可以设定固定时间提示,比如隔10分钟、1小时等
用到的第三方库:
win10toast - 用于发送桌面通知的工具
from win10toast import ToastNotifierimport time
toaster = ToastNotifier()
header = input("What You Want Me To Remember\n")
text = input("Releated Message\n")
time_min=float(input("In how many minutes?\n"))
time_min = time_min * 60
print("Setting up reminder..")
time.sleep(2)
print("all set!")
time.sleep(time_min)
toaster.show_toast(f"{header}", f"{text}", duration=10, threaded=True)
while toaster.notification_active(): time.sleep(0.005)
小结:
Python能实现的自动化功能非常丰富,如果你可以偷懒的需求场景不妨试试。
到此这篇关于分享5个方便好用的Python自动化脚本的文章就介绍到这了,更多相关Python自动化脚本内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。