前言

嗨喽~大家好呀,这里是魔王呐 !

锄禾曰当午,上班好辛苦。

上完一上午,还要上下午。

不上没钱花,心里更痛苦。

为了好日子,辛苦就辛苦

——来自不知何方神圣改编的诗

在我们工作的时候~经常会做一些重复的事情

比如:阅读新闻、发邮件、查看天气、清理文件夹等等

那有没有办法缩短甚至取消做这些东西的时间呢~

自然是有的!!那就是使用自动化脚本拉~

这样就不用我们手动一次又一次地完成这些任务了

今天就给大家带来8个python自动化脚本提高工作效率~

One 自动化阅读网页新闻

这个脚本能够实现从网页中抓取文本,然后自动化语音朗读

当你想听新闻的时候,这是个不错的选择。

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

需要的第三方库:

  • Beautiful Soup

    • 经典的HTML/XML文本解析器,用来提取爬下来的网页信息;
  • requests

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

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

获取资源链接点击

具体代码如下:

import pyttsx3
import requests
from bs4 import BeautifulSoup
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)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()

Two 自动化数据探索

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

一般我们会用pandasmatplotlib等工具来探索数据

但需要自己编写大量代码,如果想提高效率,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


Three 自动发送多封邮件

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

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

需要的第三方库:

  • Email

    • 用于管理电子邮件消息;
  • Smtlib

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

    • 用于数据分析清洗地工具;

获取资源链接点击

具体代码如下:

import smtplib
from email.message import EmailMessagedef send_email(remail, rsubject, rcontent):email = EmailMessage()                          ## Creating a object for EmailMessageemail['from'] = 'The Pythoneer Here'            ## Person who is sendingemail['to'] = remail                            ## Whom we are sendingemail['subject'] = rsubject                     ## Subject of emailemail.set_content(rcontent)                     ## content of emailwith smtplib.SMTP(host='smtp.gmail.com',port=587)as smtp:     smtp.ehlo()                                 ## server objectsmtp.starttls()                             ## used to send data between server and clientsmtp.login("deltadelta371@gmail.com","delta@371") ## login id and password of gmailsmtp.send_message(email)                    ## Sending emailprint("email send to ",remail)              ## Printing success messageif __name__ == '__main__':df = pd.read_excel('list.xlsx')length = len(df)+1for index, item in df.iterrows():email = item[0]subject = item[1]content = item[2]

Four 将 PDF 转换为音频文件

脚本可以将 pdf 转换为音频文件

原理也很简单,首先用 PyPDF 提取 pdf 中的文本,然后用 Pyttsx3 将文本转语音。

具体代码如下:

import pyttsx3,PyPDF2
pdfreader = PyPDF2.PdfFileReader(open('story.pdf','rb'))
speaker = pyttsx3.init()
for page_num in range(pdfreader.numPages):    text = pdfreader.getPage(page_num).extractText()  ## extracting text from the PDF cleaned_text = text.strip().replace('\n',' ')  ## Removes unnecessary spaces and break lines print(cleaned_text)                ## Print the text from PDF #speaker.say(cleaned_text)        ## Let The Speaker Speak The Text speaker.save_to_file(cleaned_text,'story.mp3')  ## Saving Text In a audio file 'story.mp3' speaker.runAndWait()
speaker.stop()

Five 从列表中播放随机音乐

这个脚本会从歌曲文件夹中随机选择一首歌进行播放,

需要注意的是 os.startfile

仅支持 Windows 系统。

获取资源链接点击

具体代码如下:

import random, os
music_dir = 'G:\\new english songs'
songs = os.listdir(music_dir)
song = random.randint(0,len(songs))
print(songs[song])  ## Prints The Song Name
os.startfile(os.path.join(music_dir, songs[0]))

Six 智能天气信息

国家气象局网站提供获取天气预报的 API,直接返回 json 格式的天气数据。

所以只需要从 json 里取出对应的字段就可以了。

下面是指定城市(县、区)天气的网址,直接打开网址,就会返回对应城市的天气数据。

比如:

http://www.weather.com.cn/data/cityinfo/101021200.html 上海徐汇区对应的天气网址。

具体代码如下:

mport requests
import json
import logging as log def get_weather_wind(url): r = requests.get(url) if r.status_code != 200: log.error("Can't get weather data!") info = json.loads(r.content.decode()) # get wind data data = info['weatherinfo'] WD = data['WD'] WS = data['WS'] return "{}({})".format(WD, WS) def get_weather_city(url): # open url and get return data r = requests.get(url) if r.status_code != 200: log.error("Can't get weather data!") # convert string to json info = json.loads(r.content.decode()) # get useful data data = info['weatherinfo'] city = data['city'] temp1 = data['temp1'] temp2 = data['temp2'] weather = data['weather'] return "{} {} {}~{}".format(city, weather, temp1, temp2) if __name__ == '__main__': msg = """**天气提醒**:   {} {}
{} {}   来源: 国家气象局
""".format( get_weather_city('http://www.weather.com.cn/data/cityinfo/101021200.html'), get_weather_wind('http://www.weather.com.cn/data/sk/101021200.html'), get_weather_city('http://www.weather.com.cn/data/cityinfo/101020900.html'), get_weather_wind('http://www.weather.com.cn/data/sk/101020900.html')
) print(msg)

运行结果如下所示:

Seven 长网址变短网址

有时,那些大URL变得非常恼火,很难阅读和共享,此脚本可以将长网址变为短网址。

获取资源链接点击

具体代码如下:

import contextlib
from urllib.parse import urlencode
from urllib.request import urlopen
import sys def make_tiny(url): request_url = ('http://tinyurl.com/api-create.php?' +  urlencode({'url':url})) with contextlib.closing(urlopen(request_url)) as response: return response.read().decode('utf-8') def main(): for tinyurl in map(make_tiny, sys.argv[1:]): print(tinyurl) if __name__ == '__main__': main()

这个脚本非常实用,比如说有内容平台是屏蔽公众号文章的

那么就可以把公众号文章的链接变为短链接,然后插入其中,就可以实现绕过。

Eight 清理下载文件夹

世界上最混乱的事情之一是开发人员的下载文件夹,

里面存放了很多杂乱无章的文件,

此脚本将根据大小限制来清理您的下载文件夹,

有限清理比较旧的文件。

具体代码如下:

import os
import threading
import time def get_file_list(file_path):
#文件按最后修改时间排序 dir_list = os.listdir(file_path) if not dir_list: return else: dir_list = sorted(dir_list, key=lambda x: os.path.getmtime(os.path.join(file_path, x))) return dir_list def get_size(file_path): """[summary] Args: file_path ([type]): [目录] Returns: [type]: 返回目录大小,MB """ totalsize=0 for filename in os.listdir(file_path): totalsize=totalsize+os.path.getsize(os.path.join(file_path, filename)) #print(totalsize / 1024 / 1024) return totalsize / 1024 / 1024 def detect_file_size(file_path, size_Max, size_Del): """[summary] Args: file_path ([type]): [文件目录] size_Max ([type]): [文件夹最大大小] size_Del ([type]): [超过size_Max时要删除的大小] """ print(get_size(file_path)) if get_size(file_path) > size_Max: fileList = get_file_list(file_path) for i in range(len(fileList)): if get_size(file_path) > (size_Max - size_Del): print ("del :%d %s" % (i + 1, fileList[i])) #os.remove(file_path + fileList[i]) 

尾语

加油吧打工人,只要我们足够努力,人类一定会走向更美好的未来

努力吧打工人,只要我们足够努力,老板很快就能过上更好的生活

雄起吧打工人,只要我们足够雄起,明日太阳将不复存在,而东方闪耀着的光芒,是打工人努力的模样

—— 来自不知道哪里扒拉来的语句

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦

【python】学会这八个自动化脚本,摸鱼的借口那不就来啦~相关推荐

  1. python 基于unittest写接口自动化脚本

    已过时.如感兴趣,请移步这篇文章 https://blog.csdn.net/tomoya_chen/article/details/121550706 python 基于unittest写接口自动化 ...

  2. Python selenium —— 将你的自动化脚本打包成一个exe

    写好了Python selenium脚本,到其他机器上运行,还得要在其他机器上也装一套Python的环境,尤其在你用了一些第三方库的时候,甚至还要顾及操作系统是32位还是64位,是不是很坑,如果能打成 ...

  3. python脚本自动化盲注_python dvwa布尔盲注自动化脚本(level=low)

    仅供学习代码参考 1#python dvwa布尔盲注自动化脚本 2 importrequests3 importstring4 importtime5 INIT_URL="http://12 ...

  4. 摸鱼气象Python教案代码分享

    摸鱼气象Python是大气科学领域内的一套有视频讲解,项目实战类的长期更新的教程. 其中涵盖了大量气象领域Python初学者需要用到的编程案例,如: 数据读取.数据处理.数值计算.数据可视化.数据分析 ...

  5. 专属打工人的摸鱼神器,千万别让老板知道

    在家封闭了一个月,感觉都要整个人都发霉了,天天喊着要出门. 但是一想到明天就复工可以去公司上班了,我还是觉得在家爽啊- 所以为了缓解我沉重的心情和即将面临的工作压力,特意扒了几款摸鱼神器. 单纯的靠长 ...

  6. 8个提高摸鱼效率的python自动化脚本,提高打工人幸福感~

    文章目录 容我废话两句 1.自动化阅读网页新闻 2.自动化数据探索 3.自动发送多封邮件 4.将 PDF 转换为音频文件 5.从列表中播放随机音乐 6.智能天气信息 7.长网址变短网址 8.清理下载文 ...

  7. 摸鱼也有效率——8个python自动化脚本提高打工人幸福感~

    嗨害大家好鸭!我是小熊猫❤ 最近有许多打工人都找我说打工好难 每天都是执行许多重复的任务, 例如阅读新闻.发邮件.查看天气.打开书签.清理文件夹等等, 使用自动化脚本,就无需手动一次又一次地完成这些任 ...

  8. python和selenium爬虫,网页表格下载自动化脚本

    一.selenium是啥 框架底层使用JavaScript模拟真实用户对浏览器进行操作.测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度 ...

  9. 10 个杀手级的 Python 自动化脚本

    重复性任务总是耗时且无聊,想一想你想要一张一张地裁剪 100 张照片或 Fetch API.纠正拼写和语法等工作,所有这些任务都很耗时,为什么不自动化它们呢?在今天的文章中,我将与你分享 10 个 P ...

最新文章

  1. uniGUI试用笔记(二)
  2. C++——《算法分析与设计》实验报告——最长公共子序列问题
  3. c语言程序设计科学出版色,C语言程序设计9787030330123张淑华科学出版社
  4. 【ACL2020】Reasoning with Latent Structure Refinement for Document-Level Relation Extraction
  5. 串口传输(51单片机版)
  6. xp和linux的引导文件,Linux与XP双系统中grub引导配置笔记
  7. 以前是传xml的吗_李菲儿参加《浪姐2》,与黄晓明同台互动!不怕baby吃醋吗?...
  8. 23----JS基础-----Unicode编码表
  9. 《代码整洁之道姐妹篇》
  10. PCAN-Explorer5安装教程
  11. AO采集用友oracle,用SQL快速生成用友GRP-U8的AO财务账套的方法2017
  12. 锐捷AP组建无线网络-保姆级教程
  13. 谷歌2018年IO大会
  14. php 下载函数太慢,php的fread函数的一个巨大的坑
  15. 基于SSM的网上图书商城系统
  16. 手机串号和SIM卡串号
  17. JS判断字符串中的内容是否为纯数字
  18. 视频号容易被限流的8个雷区,这些规则你一定要知道!
  19. 每个程序员都应该知道的福利
  20. U校园服务器维修,U校园使用指南

热门文章

  1. 产业公司,咋投股权?|【常垒·常识】
  2. js bug: Origin 'null' is therefore not allowed access.
  3. MySQL参数优化:back_log
  4. 【转载】Java语言中的参数传递
  5. Django实现邮箱注册系统
  6. java流式编程(七)Collectors中的常用方法
  7. python基金预测分析_Python爬虫抓取基金数据分析、预测系统设计与实现
  8. cy7c68013 usb 开发经验
  9. Kotlin使用Coroutine+ViewModel+retrofit构建一个网络请求框架
  10. 在url中输入ftp的用户名和密码