当前位置:   article > 正文

5个方便好用的Python自动化脚本,提高工作效率神器!_电脑自动化脚本

电脑自动化脚本

相比大家都听过自动化生产线、自动化办公等词汇,在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。

编程世界里有各种各样的自动化脚本,来完成不同的任务。

尤其Python非常适合编写自动化脚本,因为它语法简洁易懂,而且有丰富的第三方工具库。

这次我们使用Python来实现几个自动化场景,或许可以用到你的工作中。

1、自动化阅读网页新闻

这个脚本能够实现从网页中抓取文本,然后自动化语音朗读,当你想听新闻的时候,这是个不错的选择。

代码分为两大部分,第一通过爬虫抓取网页文本呢,第二通过阅读工具来朗读文本。

需要的第三方库:

Beautiful Soup - 经典的HTML/XML文本解析器,用来提取爬下来的网页信息

requests - 好用到逆天的HTTP工具,用来向网页发送请求获取数据

Pyttsx3 - 将文本转换为语音,并控制速率、频率和语音



import pyttsx3  
import requests  
from bs4 import BeautifulSoup  
engine = pyttsx3.init('sapi5')  
voices = engine.getProperty('voices')  
newVoiceRate = 130                       ## Reduce The Speech Rate  
engine.setProperty('rate',newVoiceRate)  
engine.setProperty('voice', voices\[1\].id)  
def speak(audio):  
  engine.say(audio)  
  engine.runAndWait()  
text = str(input("Paste article\\n"))  
res = requests.get(text)  
soup = BeautifulSoup(res.text,'html.parser')  
  
articles = \[\]  
for i in range(len(soup.select('.p'))):  
    article = soup.select('.p')\[i\].getText().strip()  
    articles.append(article)  
text = " ".join(articles)  
speak(text)  
# engine.save\_to\_file(text, 'test.mp3') ## If you want to save the speech as a audio file  
engine.runAndWait()  



  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

2、自动生成素描草图

这个脚本可以把彩色图片转化为铅笔素描草图,对人像、景色都有很好的效果。

而且只需几行代码就可以一键生成,适合批量操作,非常的快捷。

需要的第三方库:

Opencv - 计算机视觉工具,可以实现多元化的图像视频处理,有Python接口



  """ Photo Sketching Using Python """  
  import cv2  
  img = cv2.imread("elon.jpg")  
  
  ## Image to Gray Image  
  gray\_image = cv2.cvtColor(img,cv2.COLOR\_BGR2GRAY)  
  
  ## Gray Image to Inverted Gray Image  
  inverted\_gray\_image = 255-gray\_image  
  
  ## Blurring The Inverted Gray Image  
  blurred\_inverted\_gray\_image = cv2.GaussianBlur(inverted\_gray\_image, (19,19),0)  
  
  ## Inverting the blurred image  
  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)


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

3、自动发送多封邮件

这个脚本可以帮助我们批量定时发送邮件,邮件内容、附件也可以自定义调整,非常的实用。

相比较邮件客户端,Python脚本的优点在于可以智能、批量、高定制化地部署邮件服务。

需要的第三方库:

Email - 用于管理电子邮件消息

Smtlib - 向SMTP服务器发送电子邮件,它定义了一个 SMTP 客户端会话对象,该对象可将邮件发送到互联网上任何带有 SMTP 或 ESMTP 监听程序的计算机

Pandas - 用于数据分析清洗地工具



import smtplib   
from 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)  



  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

4、自动化数据探索

数据探索是数据科学项目的第一步,你需要了解数据的基本信息才能进一步分析更深的价值。

一般我们会用pandas、matplotlib等工具来探索数据,但需要自己编写大量代码,如果想提高效率,Dtale是个不错的选择。

Dtale特点是用一行代码生成自动化分析报告,它结合了Flask后端和React前端,为我们提供了一种查看和分析Pandas数据结构的简便方法。

我们可以在Jupyter上实用Dtale。

需要的第三方库:

Dtale - 自动生成分析报告



### Importing Seaborn Library For Some Datasets  
import 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)  



  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

5、自动桌面提示

这个脚本会自动触发windows桌面通知,提示重要事项,比如说:您已工作两小时,该休息了

我们可以设定固定时间提示,比如隔10分钟、1小时等

用到的第三方库:

win10toast - 用于发送桌面通知的工具



from win10toast import ToastNotifier  
import 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)     


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

小结

Python能实现的自动化功能非常丰富,如果你可以“偷懒”的需求场景不妨试试。

关于Python学习指南

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/1001902

推荐阅读
相关标签