社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

几个有趣且有用的Python自动化脚本

Python编程 • 2 年前 • 437 次点击  
来自公众号: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()

总结

今天的内容就介绍到这里,赶紧收藏和点赞吧!

---END---


推荐↓↓↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/150897
 
437 次点击