几个有趣且有用的Python自动化脚本
几个有趣且有用的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)
运行效果如下:
自动发邮件
有时候我们工作中需要给领导或者客户发邮件,这可是一门技术活。如果很快发过去,要么是效率高,要么是工作不饱和。所以我们可能需要定时发邮件,比如凌晨一点。
这里以QQ邮箱为例,简单演示怎么自动发邮件。
在运行脚本之前,需要先在邮箱中设置开启 smtp 服务。
设置完成后,会生成一个授权码,这个授权码在下面的程序中会用到。
import smtplib
from email.message import EmailMessage
import pandas as pd
def send_email(remail, rsubject, rcontent):
email = EmailMessage()
# 发件人邮箱
email['from'] = '发件人邮箱'
# 收件人邮箱
email['to'] = remail
# 主题
email['subject'] = rsubject
# 内容
email.set_content(rcontent)
with smtplib.SMTP(host='smtp.qq.com',port=25)as smtp:
smtp.ehlo()
smtp.starttls()
# 授权码登录
smtp.login("发件人邮箱","授权码")
smtp.send_message(email)
print("email send to ",remail)
if __name__ == '__main__':
send_email('目标邮箱','test','test')
解压文件
解压文件的软件多如牛毛,但是如果一次性需求比较旺盛,需要批量解压的时候,就可以考虑用 python 实现了。python 解压文件就几行代码:
from zipfile import ZipFile
unzip = ZipFile("file.zip", "r")
unzip.extractall("outputdir")
写个代码读取某个目录下的压缩文件,然后应用这两行就可以了。
PDF 加解密
对于一些重要 PDF 文件,我们可以对其设置密码,只有拿到文件和密码才可以查看内容。PDF 软件可以帮助我们做这个事情,但是如果有好多份文件呢?
使用Python的pikepdf模块,即可对文件进行加密,写一个循环就能进行批量加密文档。
import pikepdf
pdf = pikepdf.open("test.pdf")
pdf.save('encrypt.pdf', encryption=pikepdf.Encryption(owner="your_password", user="your_password", R=4))
pdf.close()
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...