比起大家都聽過自動化生產線、自動化辦公室等詞彙,在沒有人工幹預的情況下,機器可以自己完成各項任務,這大大提升了工作效率。
程式設計世界裡有各種各樣的自動化腳本,來完成不同的任務。
尤其Python非常適合編寫自動化腳本,因為它語法簡潔易懂,而且有豐富的第三方工具庫。
這次我們使用Python來實現幾個自動化場景,或許可以用到你的作品中。
這個腳本能夠實現從網頁中抓取文本,然後自動化語音朗讀,當你想聽新聞的時候,這是個不錯的選擇。
程式碼分為兩大部分,第一個透過爬蟲抓取網頁文字呢,第二透過閱讀工具來朗讀文字。
所需的第三方函式庫:
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 articlen")) 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()
這個腳本可以把彩色圖片轉化為鉛筆素描草圖,對人像、景色都有很好的效果。
而且只需幾行程式碼就可以一鍵生成,適合批次操作,非常的快捷。
所需的第三方函式庫:
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)
這個腳本可以幫助我們批量定時發送郵件,郵件內容、附件也可以自訂調整,非常的實用。
比較郵件用戶端,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)
#資料探索是資料科學專案的第一步,你需要了解資料的基本資訊才能進一步分析更深的價值。
一般我們會用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)
from win10toast import ToastNotifier import time toaster = ToastNotifier() header = input("What You Want Me To Remembern") text = input("Releated Messagen") 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自動化腳本的詳細內容。更多資訊請關注PHP中文網其他相關文章!